Advertisement
Guest User

Untitled

a guest
Jan 14th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 3.12 KB | None | 0 0
  1. unit main;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   Buttons, jpeg, ExtCtrls, StdCtrls;
  8.  
  9. type
  10.  
  11.   TForm1 = class(TForm)
  12.     btnNowy: TSpeedButton;
  13.     btnPrzeglad: TSpeedButton;
  14.     btnEdycja: TSpeedButton;
  15.     btnKoniec: TSpeedButton;
  16.     btnUsun: TSpeedButton;
  17.     Image1: TImage;
  18.     btnSzukaj: TSpeedButton;
  19.     chkSaveAtExit: TCheckBox;
  20.     procedure btnNowyClick(Sender: TObject);
  21.     procedure btnEdycjaClick(Sender: TObject);
  22.     procedure btnPrzegladClick(Sender: TObject);
  23.     procedure btnKoniecClick(Sender: TObject);
  24.     procedure btnUsunClick(Sender: TObject);
  25.     procedure FormCreate(Sender: TObject);
  26.     procedure btnSzukajClick(Sender: TObject);
  27.   private
  28.     { Private declarations }
  29.   public
  30.     { Public declarations }
  31.   end;
  32.  
  33.     wskaznik = ^lista;
  34.  
  35.     TDane = record
  36.             id : integer;
  37.             imie, nazwisko : string[30];
  38.             symbol : string[10];
  39.             telefon : string[30];
  40.             end;
  41.  
  42.     lista = record
  43.             dane : TDane;
  44.             next : wskaznik;
  45.             end;
  46. var
  47.   Form1: TForm1;
  48.   start : wskaznik;
  49.   plik : file of TDane;
  50.  
  51. procedure ZapiszDoPliku;
  52. procedure WczytajZPliku;
  53.  
  54. implementation
  55.  
  56. uses dodawanie_prac, przeglad_prac, edycja_prac, usuwanie_prac,
  57.   szukanie_prac;
  58.  
  59. {$R *.DFM}
  60.  
  61. function DodajDoListy(var start : wskaznik; info : TDane):boolean; external 'BIBL_LIST' index 1;
  62. function WczytajZPlikuDoListy(var start : wskaznik; info : TDane):boolean; external 'BIBL_LIST' index 2;
  63. function UsunZListy(var start : wskaznik; idus : integer):boolean; external 'BIBL_LIST' index 3;
  64. function Sortuj(var start : wskaznik):wskaznik; external 'BIBL_LIST' index 4;
  65. procedure TForm1.btnNowyClick(Sender: TObject);
  66. begin
  67. Form2.show;
  68. end;
  69.  
  70. procedure TForm1.btnEdycjaClick(Sender: TObject);
  71. begin
  72. Form4.Show;
  73. end;
  74.  
  75. procedure TForm1.btnPrzegladClick(Sender: TObject);
  76. begin
  77. Form3.Show;
  78. end;
  79.  
  80. procedure TForm1.btnKoniecClick(Sender: TObject);
  81. begin
  82. if chkSaveAtExit.Checked then ZapiszDoPliku;
  83. while start<>nil do
  84.   UsunZListy(start, start^.dane.id);
  85. Close;
  86. end;
  87.  
  88. procedure TForm1.btnUsunClick(Sender: TObject);
  89. begin
  90. Form5.show;
  91. end;
  92.  
  93. procedure ZapiszDoPliku;
  94. var t : wskaznik;
  95. begin
  96. try
  97.   assignfile(plik, 'pracownicy.dat');
  98.   rewrite(plik);
  99.   t:=start;
  100.   while t<>nil do
  101.     begin
  102.       write(plik, t^.dane);
  103.       t:=t^.next;
  104.     end;
  105.   closefile(plik);
  106.  except
  107.   showmessage('Wystąpił błąd podczas zapisywania do pliku.');
  108.  end;
  109. end;
  110.  
  111. procedure WczytajZPliku;
  112. var info  : TDane;
  113. begin
  114. try
  115.   assignfile(plik, 'pracownicy.dat');
  116.   reset(plik);
  117.   while not eof(plik) do
  118.     begin
  119.       read(plik, info);
  120.       WczytajZPlikuDoListy(start, info);
  121.     end;
  122.   closefile(plik);
  123.   except
  124.     on EInOutError do
  125.       begin
  126.       showmessage('Wystąpił błąd podczas czytania pliku lub pliku nie znaleziono.');
  127.       rewrite(plik);
  128.       closefile(plik);
  129.       end;
  130.   end;
  131. end;
  132.  
  133. procedure TForm1.FormCreate(Sender: TObject);
  134. begin
  135. WczytajZPliku;
  136. end;
  137.  
  138. procedure TForm1.btnSzukajClick(Sender: TObject);
  139. begin
  140. Form6.show;
  141. end;
  142.  
  143. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement