Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] ФАЙЛЫ


Автор: Cakypa 3.5.2008, 22:23
С праздником весны кстати всех !!! МИР ТРУД МАЙ !!!

Но близиться сессия и поэтому помогите сделать задачку:

В текстовом файле хранится список служащих. Для каждого служащего указаны инициалы, название занимаемой должности, год поступления на работу и оклад.(придумать свои, около 10 штук)
Написать программу, выполняющую следующие действия: 
-показать информации о служащем, фамилия которого введена с клавиатуры
или
-сортировку по фамилии, окладу или году поступления

Одно из 2ух любое, надо чтобы был текстовый файл с инфой, загружать его в дельфи, и что бы он был в нём в виде таблицы.
Желательно чтобы был компонент МайМеню1.

Помогите пажалуйста !!!

Автор: Rodman 4.5.2008, 19:23
Цитата(Cakypa @  3.5.2008,  22:23 Найти цитируемый пост)
показать информации о служащем, фамилия которого введена с клавиатуры

Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    Memo2: TMemo;
    Button1: TButton;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    SaveDialog1: TSaveDialog;
    procedure N4Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.N4Click(Sender: TObject);
begin
  Close;
end;

procedure TForm1.N2Click(Sender: TObject);
var sLine:TStringList;
begin
  sline:=TStringList.Create;
  try
    if(SaveDialog1.Execute)then
    begin
      if(FileExists(SaveDialog1.FileName))then
        sLine.LoadFromFile(SaveDialog1.FileName);
      sLine.Add(Memo2.Text);
      sLine.SaveToFile(SaveDialog1.FileName);
    end;
  finally
    sLine.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var sLine:TStringList;
    i:Integer;
begin
  if(SaveDialog1.Execute)then
  begin
    sLine:=TStringList.Create;
    try
      sLine.LoadFromFile(SaveDialog1.FileName);
      for i:=0 to sLine.Count-1 do
        if(pos(Edit1.Text, sLine.Strings[i])>0)then
        begin
          Memo1.Lines.Clear;
          Memo1.Lines.Add(sLine.Strings[i]);
          Memo1.Lines.Add(sLine.Strings[i+1]);
          Memo1.Lines.Add(sLine.Strings[i+2]);
          Memo1.Lines.Add(sLine.Strings[i+3]);
          break;
        end;
    finally
      sLine.Free;
    end;
  end;
end;

end.


Автор: Cakypa 4.5.2008, 19:27
Ух, спасибо ! А можешь саму программку выложить?

Автор: Rodman 4.5.2008, 19:33
лови

Автор: Rodman 4.5.2008, 21:23
сматри...
1. В нижне МЕМО вводишь фамилию, и 3 реквизита...
примерно так 
Код

Иванов
234
413
5234
Семенов
434
245
245
2. Заходишь в меню и нажимаешь - Сохранить!
3. Потом вводишь нужную фамилию и нажимаешь - НАЙТИ
4. Сразу появляется запрос файла в котором надо найти!
5. И если все ОК.. то в верхнем МЕМО выводится инфа!

а так?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)