Delphi программалау ортасы

Автор работы: Пользователь скрыл имя, 09 Января 2014 в 19:34, курсовая работа

Краткое описание

Қолданбалы интерфейс – бұл программалық және қолданушы мен компьютердiң әсерлесуін қамтамасыз ететiн аппаратты құралдардың жиынтығы. Мұндай өзара әрекеттесудiң негiзін диалогтар құрайды. Диалог адам мен компьютердiң арасындағы масштабта, уақыттың нақты есебі бiрлескен шешiмін бағытталған iске асыратын регламент белгiленген ақпарат алмасуларды осы жағдайда түсiндіредi. Әрбiр диалог қолданушы және компьютердiң байланыстарын физикалық қамтамасыз ететiн қорытындының енгiзу/шығаруының жеке процесстерiнен тұрады. Ақпарат алмасу хабар берумен iске асады.

Содержание

Кіріспе...................................................................................................................4
1. Delphi программалау ортасы..........................................................................6
1.1 Delphi–дің артықшылықтары.......................................................................9
1.2 Ұйымдастырушының ортасын икемдеу....................................................12
2. Delphi ортасынның графикалық мүмкіндіктерін сипаттайтын программа...........................................................................................................14
Қорытынды........................................................................................................17
Пайдаланылған әдебиеттер тізімі....................................................................18
Программаның листингісі...............................................................................19

Вложенные файлы: 1 файл

Интерфейс.docx

— 701.90 Кб (Скачать файл)

 

procedure TMainForm.AddSpBtnClick(Sender: TObject);

begin

//вызываем  обработчик пункта меню "Добавить  запись"

Add_ItemClick(Sender);

end;

 

procedure TMainForm.DelSpBtnClick(Sender: TObject);

begin

   //вызываем  обработчик пункта меню "Удалить  запись"

Del_ItemClick(Sender);

end;

 

procedure TMainForm.FindSpBtnClick(Sender: TObject);

begin

   Search_ItemClick(Sender);

end;

 

procedure TMainForm.HelpSpBtnClick(Sender: TObject);

begin

  Help_ItemClick(Sender);

end;

 

procedure TMainForm.LoadFotoBtnClick(Sender: TObject);

begin

if OpenPictureDialog1.Execute then //запускаем диалог

begin

DataM.tovarTable.Edit; //открываем таблицу для редактирования

//загружаем  фотографию

DataM.tovarTablefoto.LoadFromFile(OpenPictureDialog1.FileName);

DataM.tovarTable.Post; //сохраняем изменения

DelFotoBtn.Enabled := true; //деактивизируем кнопку

end;

end;

 

procedure TMainForm.DelFotoBtnClick(Sender: TObject);

begin

if MessageBox(0,PChar('Вы  действительно хотите удалить  фотографию записи "' +DataM.TovarTableProducts_name.AsString +'"?'), 'Внимание!',MB_YESNOCANCEL + MB_ICONQUESTION) = id_YES then

begin

DataM.TovarTable.Edit;

DataM.TovarTableFoto.Clear; //очищаем поле Foto

DataM.TovarTable.Post;

DelFotoBtn.Enabled := false;

LoadFotoBtn.SetFocus; //устанавливаем фокус на кнопку  загрузки

end;

end;

 

procedure TMainForm.DBEdit18Change(Sender: TObject);

begin

//выводим  номер текущей записи и общее  число записей таблицы AllBooks

//как строковый  тип данных

StatusBar1.Panels[3].Text := IntToStr(DataM.tovarTable.RecNo) + ' из ' + IntToStr(DataM.tovarTable.RecordCount);

//выводим  значения полей "Фамилия", "Имя"  и "Отчество"

StatusBar1.Panels[4].Text := DataM.tovarTableproducts_name.AsString + ' ' + DataM.tovarTablenumber_of_sertificate.AsString + ' ' + DataM.tovarTableProizvodstvo_tovara.AsString;

if DataM.tovarTableFoto.BlobSize = 0 then

begin

DelFotoBtn.Enabled := false;

DelFotoPop_Item.Enabled := false;

end

else

begin

DelFotoBtn.Enabled := true;

DelFotoPop_Item.Enabled := true;

end;

end;

 

procedure TMainForm.DBEdit18KeyPress(Sender: TObject; var Key: Char);

var a:integer;

begin

a:=ord(Key); //запоминаем  нажатую клавишу

case a of

48..57,186..191,220,221,33,34..42,59..64,92..94,44..47:

begin //если  клавиша недопустима, выводим  сообщение

ShowMessage ('Ошибка! Несовпадение вводимых данных  с типом, разрешенным для этой  графы.');

key:=char(0); //блокируем  ввод неверного символа

DBEdit1.SetFocus; //устанавливаем  фокус ввода

end;

end;

end;

 

procedure TMainForm.LoadFotopop_ItemClick(Sender: TObject);

begin

LoadFotoBtnClick(Sender);

end;

 

procedure TMainForm.DelFotoPop_ItemClick(Sender: TObject);

begin

DelFotoBtnClick(Sender);

end;

end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SearchUnit;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ExtCtrls;

type

  TSearchForm = class(TForm)

    Panel1: TPanel;

    Label1: TLabel;

    LabeledEdit1: TEdit;

    RadioButton1: TRadioButton;

    RadioButton2: TRadioButton;

    RadioButton3: TRadioButton;

    FindNextBtn: TButton;

    CancelBtn: TButton;

    procedure FindNextBtnClick(Sender: TObject);

    procedure CancelBtnClick(Sender: TObject);

    procedure RadioButton1Click(Sender: TObject);

    procedure RadioButton3Click(Sender: TObject);

    procedure RadioButton2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  SearchForm: TSearchForm;

implementation

uses DataUnit;

{$R *.dfm}

 

procedure TSearchForm.FindNextBtnClick(Sender: TObject);

//объявляем  список меток перехода

Label da1,da2,da3;

//объявляем  новые переменные

var count : integer;

i : integer;

text : string;

begin

//запоминаем  в переменной count количество записей  таблицы AllBooks

count := DataM.KlientTable.RecordCount;

//в переменную text заносим значение, введенное в  поле LabeledEdit1

text := LabeledEdit1.Text;

//если отмечен  переключатель RadioButton1, то

if RadioButton1.Checked then

//если поле LabeledEdit1 не пустое, то

if Length(LabeledEdit1.Text)<>0 then

begin

i:=0;

//если номер  текущей записи равен числу  строк, т.е. запись последняя

if (DataM.klientTable.RecNo = count) and

//и если  значение поля Surname с первого символа  совпадает с текстом,

//введенным  в поле LabeledEdit1, то

(AnsiLowerCase(copy(DataM.klientTableSurname2.AsString,1,Length(text))) = AnsiLowerCase(text))then

begin

//установить  маркер таблицы на первую запись

DataM.klientTable.First;

//перейти  на метку da1

goto da1;

end;

//пока не  конец таблицы, выполнять

while not DataM.klientTable.Eof do

begin

//переход  на следующую запись

DataM.klientTable.Next;

da1: //метка  da1

//если условие  совпадения выполняется, то

if AnsiLowerCase(copy(DataM.klientTableSurname2.AsString,1,Length(text))) = AnsiLowerCase(text)then

//остановить  цикл и позиционировать маркер

break

//если условие  не выполняется, то увеличить  i

else inc(i);

//если значение i превышает количество записей,  то

if i = count+1 then

begin

//вывести  сообщение и остановить цикл

ShowMessage('Не  найдено!');

break;

end;

//если достигнут  конец таблицы, то

if DataM.klientTable.Eof then

begin

//установить  маркер на первую запись

DataM.klientTable.First;

//перейти  на метку

goto da1;

end;end;end

else //если  поле LabeledEdit1 пусто

begin

//вывести  сообщение

ShowMessage('Введите  данные для поиска!');

//установить  фокус ввода в поле LabeledEdit1

LabeledEdit1.SetFocus;

end;

//если отмечен  переключатель RadioButton2, то

if RadioButton3.Checked then

//если поле LabeledEdit1 не пустое, то

if Length(LabeledEdit1.Text)<>0 then

begin

i:=0;

//если номер  текущей записи равен числу  строк, т.е. запись последняя

if (DataM.TovarTable.RecNo = count) and

//и если  значение поля Surname с первого символа  совпадает с текстом,

//введенным  в поле LabeledEdit1, то (AnsiLowerCase(copy(DataM.TovarTableproducts_name.AsString,1,Length(text))) = AnsiLowerCase(text))then

begin

//установить  маркер таблицы на первую запись

DataM.TovarTable.First;

//перейти  на метку da1

goto da2;

end;

//пока не  конец таблицы, выполнять

while not DataM.TovarTable.Eof do

begin

//переход  на следующую запись

DataM.TovarTable.Next;

da2: //метка  da2

//если условие  совпадения выполняется, то

If AnsiLowerCase(copy(DataM.TovarTableproducts_name.AsString,1,Length(text))) = AnsiLowerCase(text)then

//остановить  цикл и позиционировать маркер

break

//если условие  не выполняется, то увеличить  i

else inc(i);

//если значение i превышает количество записей,  то

if i = count+1 then

begin

//вывести  сообщение и остановить цикл

ShowMessage('Не  найдено!');

break;

end;

//если достигнут  конец таблицы, то

if DataM.TovarTable.Eof then

begin

//установить  маркер на первую запись

DataM.TovarTable.First;

//перейти  на метку

goto da2;

end;end;end

else //если  поле LabeledEdit1 пусто

begin

//вывести  сообщение

ShowMessage('Введите  данные для поиска!');

//установить  фокус ввода в поле LabeledEdit1

LabeledEdit1.SetFocus;

end;

//если отмечен  переключатель RadioButton3, то

if RadioButton2.Checked then

//если поле LabeledEdit1 не пустое, то

if Length(LabeledEdit1.Text)<>0 then

begin

  i:=0;

//если номер  текущей записи равен числу  строк, т.е. запись последняя

if (DataM.klientTable.RecNo = count) and

//и если  значение поля Surname с первого символа  совпадает с текстом,

  //введенным  в поле LabeledEdit1, то

(AnsiLowerCase(copy(DataM.klientTablecard_number2.AsString,1,Length(text))) = AnsiLowerCase(text))then

begin

//установить  маркер таблицы на первую запись

DataM.KlientTable.First;

//перейти  на метку da3

goto da3;

end;

//пока не  конец таблицы, выполнять

while not DataM.klientTable.Eof do

begin

//переход  на следующую запись

DataM.klientTable.Next;

da3: //метка  da3

//если условие  совпадения выполняется, то

if AnsiLowerCase(copy(DataM.klientTablecard_number2.AsString,1,Length(text))) = AnsiLowerCase(text)then

//остановить  цикл и позиционировать маркер

break

//если условие  не выполняется, то увеличить  i

else inc(i);

//если значение i превышает количество записей,  то

if i = count+1 then

begin

//вывести  сообщение и остановить цикл

ShowMessage('Не  найдено!');

break;

end;

//если достигнут  конец таблицы, то

if DataM.klientTable.Eof then

begin

//установить  маркер на первую запись

DataM.klientTable.First;

//перейти  на метку

goto da3;

end;

end;

end

else //если  поле LabeledEdit1 пусто

begin

//вывести  сообщение

ShowMessage('Введите  данные для поиска!');

//установить  фокус ввода в поле LabeledEdit1

LabeledEdit1.SetFocus;

end;

end;

procedure TSearchForm.CancelBtnClick(Sender: TObject);

begin

  Close;

end;

procedure TSearchForm.RadioButton1Click(Sender: TObject);

begin

    LabeledEdit1.SetFocus;

end;

procedure TSearchForm.RadioButton3Click(Sender: TObject);

begin

    LabeledEdit1.SetFocus;

end;

procedure TSearchForm.RadioButton2Click(Sender: TObject);

begin

     LabeledEdit1.SetFocus;

end;

end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Информация о работе Delphi программалау ортасы