Программа делфи калькулятор скачать

Программа делфи калькулятор

Пишем калькулятор на Delphi 7 (часть1)
В этой статье мы подробно рассмотрим создание простого стандартного калькулятора с помощью среды разработки Borland Delphi 7. Основные объекты калькулятора будем создавать программным способом. Итак, меняем свойства главного окна (в окошке слева Object Inspector ) Form1 , в соответствии со следующей таблицей (остальные поля не трогаем): Свойства Form1 Значение Caption Калькулятор AutoScroll false BorderIcons [biSystemMenu, biMinimize] BorderStyle bsSingle Position poScreenCenter Height 292 Width 286. Добавим на форму объект MainMenu (вверху или справа на панеле). Кликнем на него два раза мышкой и заполним следующим образом: Чтобы подчеркнуть букву в названии определенного пункта меню, необходимо перед ней поставить знак & . (Например, " &Справка" ).

Далее переходим на создание объектов при помощи программного кода (жмем F12). Попробуем сначала добавить текстовое поле, где будут выводиться все цифры и вычисления калькулятора (все, что записано ниже после слова "Например" - пишем в Delphi). Для создания объекта программным способом, выполним следующие действия: 1. В uses пропишем модуль объектов. Например: StdCtrls. 2. Перед строкой implementation и после ключевого слова var создадим новую переменную, а в качестве типа переменной укажем класс объекта (класс объекта всегда начинается с буквы "Т" - вероятно, произошло от названия программы Turbo Pascal). Например: Edit: TMemo; Button: array[0..22] of TButton;

3. В событии (например, при создании формы) сначала создаем новый объект ( Edit:=TMemo.Create(form1); ), затем отображаем его на Form1 ( Edit.Parent:=form1; ). А дальше, как и для обычного объекта, указываем его свойства (координаты, размеры и т.п.). Например: procedure TForm1.FormCreate (Sender: TObject); begin Edit := TMemo.Create( form1 ); Edit.Parent := form1; Edit.Text := '0'; Edit.W > Edit.Height := 21; Edit.Left := 10; Edit.Top := 20; Edit.Alignment := taRightJustify; end; Свойство Alignment выравнивает текст в крайнее правое положение. Таким же образом создадим на форме кнопки. Но создавать их не будем по-отдельности. Создадим массив кнопок, который и выведем в определенном порядке на форму. У нас будет несколько групп кнопок (для ввода цифр и для вычислений).

Так как у нас используется массив, соответственно каждый объект необходимо смещать таким образом, чтобы не получилось так, что один объект лежит на другом. Так не должно быть! Поэтому обязательно используйте свойства Top и Left для расположения объекта на форме Form1 в определенных координатах. Чтобы проще было программировать, мы создали массив кнопок от 0 до 9 с соответствующими им кнопками. Должно получиться что-то вроде этого: uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ComCtrls; type TForm1 = class(TForm) MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; N4: TMenuItem; procedure FormCreate(Sender: TObject); procedure N4Click(Sender: TObject); private public end; var Form1: TForm1; Edit: TMemo; Button: array[0..22] of TButton; procedure TForm1.FormCreate (Sender: TObject); var i, left, width, top: integer; begin left:=10; w > // Создаем объект поля ввода Edit := TMemo.Create( form1 ); Edit.Parent := form1; Edit.Text := '0'; Edit.W > Edit.Height := 21; Edit.Left := left; Edit.Top := 20; Edit.Alignment := taRightJustify; // Создаем объекты кнопок для стандартного калькулятора for i:=0 to 22 do begin Button[i] := TButton.Create( form1 ); Button[i].Parent := form1; case i of 10..12: begin if i=10 then left := 10; Button[i].Left := left; Button[i].Top := 51; Button[i].W > left := left+83; end; 1..9: begin if i=1 then begin left := 10; top := 176; end; left := left + width + 10; if i mod 3 =1 then begin left := 10; top := top - 30; end; Button[i].W > Button[i].Left := left; Button[i].Top := top; Button[i].Caption := inttostr(i); end; 13..20: begin if i=13 then begin left := button[9].Left + button[9].Width + 10; top := 206; w > end; left := left + width + 10; if i mod 2 =1 then begin left := button[9].Left + button[9].Width + 10; top := top - 30; end; Button[i].W > Button[i].Left := left; Button[i].Top := top; end; 0: begin Button[0].W > Button[0].Left := 10; Button[0].Top := 176; Button[i].Caption := inttostr(i); end; 21,22: begin left := left + width + 10; if i mod 2 =1 then left := button[0].Left + button[9].Width + 10; Button[i].W > Button[i].Left := left; Button[i].Top := button[13].Top; end; end; end; // Даем названия каждой кнопке button[10].Caption := 'Backspace'; button[11].Caption := 'CE'; button[12].Caption := 'C'; button[13].Caption := '+'; button[14].Caption := '='; button[15].Caption := '-'; button[16].Caption := '1/x'; button[17].Caption := '*'; button[18].Caption := '%'; button[19].Caption := '/'; button[20].Caption := 'sqrt'; button[21].Caption := '+/-'; button[22].Caption := ','; end;

Затем, по-желанию, добавим на форму объект StatusBar (с вкладки Win32 ). В свойстве Panels откроем новое окно, создадим новую панель и назовем ее "Copyright @ 2013 FORTRAN NEW Company" (можно назвать по-своему).

Скачать

Скачать
Пользователи выбирают: