|
#1
|
||||
|
||||
работа с таблицей
Помогите,пожалуйста,не могу разобраться совсем,как в таблице сделать поле,которое бы вычисляло,например,сумму 2х других полей.Может кто знает?
|
#2
|
||||
|
||||
С таблицами мало работал, но скорее всего принцип такой:
Код:
3 ячейка:=StrToInt(1-я ячейка у таблицы)+StrToInt(2-я ячейка у таблицы); |
#3
|
||||
|
||||
Код:
var summa:integer; a:string b:string; begin a:=ячейка1; b:=ячейка2; summa:=StrToInt(a)+StrToInt(b); ShowMessage('Сумма= ' + IntToStr(summa)); end; Программирование - это искусство и наш смысл жизни. |
#4
|
||||
|
||||
Вот рабочий пример со StringGrid'ом:
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids; type TForm1 = class(TForm) StringGrid1: TStringGrid; procedure FormCreate(Sender: TObject); procedure StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: String); procedure StringGrid1GetEditText(Sender: TObject; ACol, ARow: Integer; var Value: String); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin with StringGrid1 do begin Cells[0, 0]:='0'; Cells[1, 0]:='0'; Cells[2, 0]:='0'; end; end; procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: String); begin try StringGrid1.Cells[2, 0]:=IntToStr(StrToInt(StringGrid1.Cells[0, 0]) + StrToInt(StringGrid1.Cells[1, 0])); except end; end; procedure TForm1.StringGrid1GetEditText(Sender: TObject; ACol, ARow: Integer; var Value: String); begin if ACol = 2 then Exit; try StrToInt(Value); except Value:='0'; end; StringGrid1.Cells[2, 0]:=IntToStr(StrToInt(StringGrid1.Cells[0, 0]) + StrToInt(StringGrid1.Cells[1, 0])); end; end. Что делать, когда сломался комп: 1. Если вы юзер - делать ноги. 2. Если ремонтник - делать деньги. 3. Если вы программист - делать вид, что так было задумано. |
#5
|
||||
|
||||
Цитата:
не уверена,что это будет работать в DBGrid...А автар у тебя симпатичненький |
#6
|
||||
|
||||
Спасибо.Только проблемка.Мне надо для работы с DBGrid.
|
#7
|
||||
|
||||
А ты не пробывала вынести эти поля в отдельную форму - там посчитать, а потом записать на место?
В некоторых случаях - это самый оптимальный вариант! Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#8
|
||||
|
||||
Попробуй это.
Надеюсь поможет (если я тебя правильно понял) Отпишись! Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Последний раз редактировалось Yurk@, 16.08.2009 в 16:39. |