![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Имеется 2 StringGrid. Мне нужно что результат вычислений автоматически выводился в StringGrid2 после введения чисел в StringGrid1.
Может кто помочь, а то я поизучала данную процедуру, но не совсем разобралась как это реализовать |
|
#2
|
||||
|
||||
|
здесь надо использовать потоки, по-другому никак;
хотя по событию onkeypress приравнять значения stringgrid'ов Код:
procedure form1.onkeypressStringGrid;
begin
stringgrid1.cells[0,2]:=stringgrid1.cells[0,1]; { при каждом нажатии на клавиши идет обновление, точнее присвоение 2-й ячейке значения первой}
end;Код:
procedure form1.onkeypressStringGrid1;
var
a,b:integer;
begin
stringgrid2.cells[a,b]:=stringgrid1.cells[a,b]; { при каждом нажатии на клавиши идет обновление, точнее присвоение 2му значения первого}
end;Последний раз редактировалось march, 04.05.2009 в 18:41. |
|
#3
|
|||
|
|||
|
Да присваивание все нормально, а если мне надо не просто присвоить, а вывести результат, например сложить несколько чисел из первого стрингрида и вывести во второй.... Он мне выводит 0 и не делает сложение...
|
|
#4
|
||||
|
||||
|
Код:
procedure form1.onkeypressStringGrid1; var a,b,c,d,e,f:integer; begin stringgrid2.cells[a,b]:=floattostr(strtofloat(stringgrid1.cells[c,d])+strtofloat(stringgrid1.cells[e,f])); end; Последний раз редактировалось march, 04.05.2009 в 20:37. |
|
#5
|
|||
|
|||
|
не работает(((
|
|
#6
|
||||
|
||||
|
ну тогда не знаю, если с потоками раньше имела дело, то делай через них,
ИМХО попроще, потом в них подобной фигни накидать можно будет |
|
#7
|
||||
|
||||
|
звиняй: по событию onkeyup а не 'press'
Код:
procedure TForm1.StringGrid1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin stringgrid2.Cells[0,0]:=floattostr(strtofloat(stringgrid1.cells[0,0])+strtofloat(stringgrid1.cells[0,1])); end; |