КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Добавление вычисляемого поля
Else Begin Begin Else End Begin Begin Else End Else Begin Begin Begin DBEdit1.DataSource:=Form1.DataSource1; DBEdit1.DataField:='Fio';
DBEdit2.DataSource:=Form1.DataSource1; DBEdit2.DataField:='DataR'; DBEdit3.DataSource:=Form1.DataSource1; DBEdit3.DataField:='Adres'; DBEdit4.DataSource:=Form1.DataSource1; DBEdit4.DataField:='NomerChit'; BitBtn1.ModalResult:=mrOk;
BitBtn2.ModalResult:=mrCancel; end; Для кнопки «Добавить запись в конец НД » напишите обработчик события OnClick:
procedure TForm1.BitBtn1Click(Sender: TObject);
if table1.ReadOnly=False then Table1.Append;
if Form2.ShowModal=mrOk then Table1.Post
Table1.Cancel;
ShowMessage('Редактирование записей запрещено!'); end;
Для кнопки «Вставить запись» – следующую процедуру:
procedure TForm1.BitBtn2Click(Sender: TObject); if table1.ReadOnly=False then Table1.Insert; if Form2.ShowModal=mrOk then Table1.Post else Table1.Cancel;
ShowMessage('Редактирование записей запрещено!'); end;
Для кнопки «Удалить запись»:
procedure TForm1.BitBtn3Click(Sender: TObject);
if table1.ReadOnly=False then if Messagedlg('Удалить запись?', mtConfirmation,[mbYes, mbNo],0)=mrYes then
Table1.delete; end ShowMessage('Редактирование записей запрещено!'); end;
После щелчка по этой кнопке на экране появляется окно, в котором происходит подтверждение или отказ от удаления текущей записи.
a. Контрольные вопросы 1. Для чего используются процедуры Edit, Post, Insert, Append, Delete?
2. Как программно выполнить редактирование записи?
3. Как добавить запись?
4. Как программно выполнить удаление записи?
5. Как очистить таблицу БД?
Практическая работа 11. Тема: Добавление вычисляемого поля.Подсчет итогов по столбцу таблицы
1Создайте на диске D: в папке TO-31 каталог Практическая работа12 2Запустите утилиту BDE Аdministrator и создайте новый псевдоним БД с именем Итогиаттестации. 3С помощью утилиты Database Desktop создайте новую таблицу со следующими полями: Группа
Количество студентов в группе
Количество студентов с одной двойкой
Количество студентов с двумя двойками
Количество студентов с тремя и более двойками
Пропуски по неуважительной причине
Пропуски по уважительной причине
4. Сохраните таблицу в созданную папку Практическая работа12 под именем attestation.db и занесите в неё следующие данные: 5Запустите Delphi 7.0.
6На форму поместите компоненты Table, DBGrid, DataSource1 и DBNavigator и установите для каждого компонента свойства в том порядке, как указано ниже:
Table1
DatabaseName - Итоги аттестации TableName - attestation.db Activ – True
DataSource1
DataSet - Table1
DBGrid
DataSource - DataSource1
DBNavigator
DataSource - DataSource1
7. Сохраните проект в папку Практическая работа12. Запустите программу на исполнение.
8. Вновь вернитесь в режим редактирования приложения.
9. У компонента Table1 свойству Activ установите значение False.
10. Щёлкните правой кнопкой мыши по компоненту Table1. Из контекстного меню выберите пункт Field Editor. Таким образом вы запустили Редактор полей. 11. В появившемся окне Редактора полей (Field Editor) щёлкните правой кнопкой мыши и с помощью контекстного меню добавьте все поля (Add fields …)
12. Вновь в редакторе полей щёлкните правой кнопкой мыши и теперь уже добавьте новое поле (New field) со следующими настройками:
имя
нового
поля
тип данных нового поля
тип нового поля (вычисляемое)
13. Создайте процедуру вычисления поля (событие OnCalcFields) и внесите следующий код:
if (Table1Number_of_person.Text<>'') and (Table1One.Text<>'') and (Table1Two.Text<>'') and (Table1Three_and_more.Text<>'') then Table1Progress.asFloat:= (100-
((((StrToInt(Table1One.Text) +StrToInt(Table1Two.Text)+ StrToInt(Table1Three_and_more.Text))*100)/(StrToInt(T able1Number_of_person.Text)))));
14. Вновь у компонента Table1 свойству Activ установите значение True. Сохраниете изменения и запустите приложение на исполнение.
Если вы всё сделали правильно, поле Progressing должно высчитываться автоматически, попробуйте
изменить в полях One, Two, Three_add_more данные и посмотрите, как меняются значения в поле Progressing
Дата добавления: 2014-11-06; Просмотров: 380; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |