Advertisement
Vanya_Shestakov

TestForm

Jan 31st, 2021
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 3.31 KB | None | 0 0
  1. unit TestUnit;
  2.  
  3. interface
  4.  
  5. uses
  6.   Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  7.   Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, Vcl.StdCtrls, Vcl.Grids;
  8.  
  9. type
  10.   TTestForm = class(TForm)
  11.     MainMenu: TMainMenu;
  12.     About1: TMenuItem;
  13.     Fi1: TMenuItem;
  14.     Open1: TMenuItem;
  15.     Save1: TMenuItem;
  16.     EditOfFirstValue: TEdit;
  17.     EditOfSecondValue: TEdit;
  18.     Label1: TLabel;
  19.     Label2: TLabel;
  20.     CalculateButton: TButton;
  21.     Label3: TLabel;
  22.     OpenDialog: TOpenDialog;
  23.     SaveDialog: TSaveDialog;
  24.     Button1: TButton;
  25.     procedure CalculateButtonClick(Sender: TObject);
  26.     procedure FindSum(A: Integer; B: Integer);
  27.     procedure Open1Click(Sender: TObject);
  28.     procedure Save1Click(Sender: TObject);
  29.     procedure FirstEditChange(Sender: TObject);
  30.     procedure SecondEditChange(Sender: TObject);
  31.   private
  32.     { Private declarations }
  33.   public
  34.     { Public declarations }
  35.   end;
  36.  
  37.  
  38. var
  39.   TestForm: TTestForm;
  40.  
  41. implementation
  42.  
  43. {$R *.dfm}
  44.  
  45. procedure TTestForm.CalculateButtonClick(Sender: TObject);
  46. begin
  47.     if MessageDlg('Are you sure you want to calculate?', mtConfirmation, [mbYes, mbNO], 0) = mrYes  then
  48.     begin
  49.         try
  50.             FindSum(StrToInt(EditOfFirstValue.Text), StrToInt(EditOfSecondValue.Text));
  51.         except
  52.             MessageDlg('Enter the integer number!', mtError, [mbOK], 0);
  53.         end;
  54.     end;
  55. end;
  56.  
  57. procedure TTestForm.FirstEditChange(Sender: TObject);
  58. begin
  59.     Label3.Caption := 'Sum:'
  60. end;
  61.  
  62. procedure TTestForm.SecondEditChange(Sender: TObject);
  63. begin
  64.     Label3.Caption := 'Sum:'
  65. end;
  66.  
  67. procedure TTestForm.FindSum(A: Integer; B: Integer);
  68. var
  69.     Sum: Integer;
  70.  
  71. begin
  72.     Sum := A + B;
  73.     Label3.Caption := 'Sum: ' + IntToStr(Sum);
  74. end;
  75.  
  76. procedure TTestForm.Open1Click(Sender: TObject);
  77. var
  78.     InputFile: TextFile;
  79.     IsCorrect: Boolean;
  80.     FirstValue: Integer;
  81.     SecondValue: Integer;
  82. begin
  83.     if OpenDialog.Execute then
  84.     begin
  85.         IsCorrect := True;
  86.         try
  87.             AssignFile(InputFile, OpenDialog.FileName);
  88.             Reset(InputFile);
  89.         except
  90.             MessageDlg('Input error!', mtError, [mbOK], 0);
  91.             IsCorrect := False;
  92.         end;
  93.         if IsCorrect then
  94.         begin
  95.             try
  96.                 Readln(InputFile, FirstValue);
  97.                 Readln(InputFile, SecondValue);
  98.                 EditOfFirstValue.Text := IntToStr(FirstValue);
  99.                 EditOfSecondValue.Text := IntToStr(SecondValue);
  100.             except
  101.                 MessageDlg('Incorrect data in the file!', mtError, [mbOK], 0);
  102.             end;
  103.         end;
  104.         CloseFile(InputFile);
  105.     end;
  106. end;
  107.  
  108. procedure TTestForm.Save1Click(Sender: TObject);
  109. var
  110.     IsCorrect: Boolean;
  111.     OutFile: TextFile;
  112. begin
  113.     if SaveDialog.Execute then
  114.     begin
  115.         IsCorrect := True;
  116.         try
  117.             AssignFile(OutFile, SaveDialog.FileName);
  118.             Rewrite(OutFile);
  119.         except
  120.             MessageDlg('Output error!', mtError, [mbOK], 0);
  121.             IsCorrect := False;
  122.         end;
  123.         if IsCorrect then
  124.         begin
  125.             Writeln(OutFile, Label3.Caption);
  126.             MessageDlg('Data saved succesfully!', mtInformation, [mbOK], 0);
  127.         end;
  128.         CloseFile(OutFile);
  129.     end;
  130. end;
  131.  
  132. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement