Advertisement
Egor_Vakar

(Delphi) lab 5.1 addElem

Mar 21st, 2022
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 2.68 KB | None | 0 0
  1. unit addElem;
  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.StdCtrls, Vcl.Menus, ClipBrd;
  8.  
  9. type
  10.   TAddForm = class(TForm)
  11.     TaskInfo: TLabel;
  12.     AddEdit: TEdit;
  13.     AddButton: TButton;
  14.     PopupMenu: TPopupMenu;
  15.     N1: TMenuItem;
  16.     N2: TMenuItem;
  17.     N3: TMenuItem;
  18.     N4: TMenuItem;
  19.     procedure CutClick(Sender: TObject);
  20.     procedure CopyClick(Sender: TObject);
  21.     procedure DeleteClick(Sender: TObject);
  22.     procedure AddEditChange(Sender: TObject);
  23.     procedure AddEditKeyDown(Sender: TObject; var Key: Word;
  24.       Shift: TShiftState);
  25.     procedure AddEditKeyPress(Sender: TObject; var Key: Char);
  26.     procedure AddButtonClick(Sender: TObject);
  27.     procedure AddClose(Sender: TObject; var CanClose: Boolean);
  28.   private
  29.     { Private declarations }
  30.   public
  31.     { Public declarations }
  32.   end;
  33.  
  34. var
  35.   AddForm: TAddForm;
  36.  
  37. implementation
  38.  
  39. {$R *.dfm}
  40.  
  41. uses MainUnit;
  42.  
  43.  
  44.  
  45. procedure TAddForm.AddButtonClick(Sender: TObject);
  46. var
  47.     Str: String;
  48. begin
  49.     MainForm.Enabled := True;
  50.     if MainForm.sgArray.Cells[0,1] <> '' then
  51.         MainForm.sgArray.ColCount := MainForm.sgArray.ColCount + 1;
  52.     MainForm.sgArray.Cells[MainForm.sgArray.ColCount - 1, 0] := IntToStr(MainForm.sgArray.ColCount);
  53.     MainForm.sgArray.Cells[MainForm.sgArray.ColCount - 1, 1] := AddEdit.Text;
  54.     AddEdit.Text := '';
  55.     AddButton.Enabled := False;
  56.     AddForm.Hide;
  57.     MainForm.DeleteButton.Enabled := True;
  58.     MainForm.ClearButton.Enabled := True;
  59.     Str := MainForm.sgArray.Cells[MainForm.sgArray.ColCount - 1, 1];
  60.     MainForm.AddElem(Str);
  61. end;
  62.  
  63. procedure TAddForm.AddClose(Sender: TObject; var CanClose: Boolean);
  64. begin
  65.     MainForm.Enabled := True;
  66.     AddEdit.Text := '';
  67.     AddButton.Enabled := False;
  68.     AddForm.Hide;
  69. end;
  70.  
  71. procedure TAddForm.AddEditChange(Sender: TObject);
  72. begin
  73.     AddButton.Enabled := AddEdit.Text <> '';
  74. end;
  75.  
  76. procedure TAddForm.AddEditKeyDown(Sender: TObject; var Key: Word;
  77.   Shift: TShiftState);
  78. begin
  79.     TEdit(Sender).ReadOnly := (((Shift=[ssShift]) and (Key = VK_INSERT)) or (Shift=[ssCtrl]) or (Shift=[ssAlt]));
  80. end;
  81.  
  82. procedure TAddForm.AddEditKeyPress(Sender: TObject; var Key: Char);
  83. begin
  84.     if ((Length(TEdit(Sender).Text) = 8) and (Key <> #08)) then
  85.         Key := #0;
  86. end;
  87.  
  88. procedure TAddForm.CopyClick(Sender: TObject);
  89. begin
  90.     ClipBoard.AsText := AddEdit.Text;
  91. end;
  92.  
  93. procedure TAddForm.CutClick(Sender: TObject);
  94. begin
  95.     ClipBoard.AsText := AddEdit.Text;
  96.     AddEdit.Text := '';
  97. end;
  98.  
  99. procedure TAddForm.DeleteClick(Sender: TObject);
  100. begin
  101.     AddEdit.Text := '';
  102. end;
  103.  
  104.  
  105. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement