|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.08.2008, 16:37 | #1 |
Пользователь
Регистрация: 17.07.2008
Сообщений: 26
|
Stringgrid, Procedure, cells[m,n]:=DynMas[a,b]. Очередной вопрос начинающего (#003)
Есть процедура (которую мы пишем событии OnDrawCell)
Она нам закрасит ячейку 1/1 в красный цвет. procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin if (ACol = 1) and (ARow = 1) then begin StringGrid1.Canvas.Brush.Color := clRed; StringGrid1.Canvas.FillRect (Rect); StringGrid1.Canvas.TextRect (Rect, Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol,ARow]); end; {if} end; Вопросы: 1. Как написать процедуру, которая будет делать скажем тоже самое, только не при запуске программы, а только тогда , когда мы её будем вызывать сами, скажем нажатием кнопки. Всякие вложения вида: procedure TForm1.Button1Click(Sender: TObject); begin StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin end; Отчего-то не верны, хотя по логике вещей Мы нажатием кнопки Button1 пытаемся вызывать заранее заданную процедуру StringGrid1DrawCell end; |
01.08.2008, 17:05 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Ну если я правильно понял то например так:
Код:
Цитата:
Ибо OnDrawCell вызывается когда нужно для каждой видимой ячейки, а ты даже по кнопке вызвав этот обработчик обработаешь всего одну ячейку.
I'm learning to live...
Последний раз редактировалось Stilet; 01.08.2008 в 17:09. |
|
01.08.2008, 17:40 | #3 |
Пользователь
Регистрация: 17.07.2008
Сообщений: 26
|
Полученный код скопировал в новый проект.
Скомпилировал. Ошибок вроде никаких нету. Но и результатов тоже. Посмотрите пожалуйста. Я не понимаю почему неверна логика, что сначала мы задаём одну функцию (или процедуру) а потом могли бы её вызывать в другой процедуре... |
04.08.2008, 09:22 | #4 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
I'm learning to live...
|
||
04.08.2008, 12:00 | #5 |
Форумчанин
Регистрация: 01.02.2007
Сообщений: 785
|
2 Albert2008 - все работает ))) абсолютно точно ))
Создавай 3 события в делфи, как тебе написали - и все работает
Изо всей благодати
В руках крепко сжатых Я донесу только капли |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с многомерными массивами в функции. Очередной вопос начинающего (#005) | Albert2008 | Компоненты Delphi | 14 | 13.08.2008 22:03 |
Procedure,function,Stringgrid (#004) Очередной вопрос начинающего. | Albert2008 | Компоненты Delphi | 4 | 01.08.2008 21:30 |
Stringgrid, cells[m,n] и двумерные массивы.(#002) Очередной вопрос начинающего. | Albert2008 | Компоненты Delphi | 4 | 28.07.2008 19:02 |
вопрос по php от начинающего | sleeper_Izh | PHP | 15 | 11.07.2008 10:19 |
Видимо очередной вопрос по БД... | Amaranth | Помощь студентам | 1 | 16.12.2007 00:56 |