Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как вывести сеткой одномерный массив кнопок в Delphi? [D7, XP]


Krema ©   (2011-09-25 18:50:00) 

Здравствуйте, как можно сеткой 3х3 вывести одномерный массив кнопок на Delphi 7? Пытаюсь написать простой канкулятор с использованием массива кнопок. В линию получается а сеткой нет.
Так же интересно узнать как такой правильно кнопке задавать обработчик событий? Пока думаю писать процедуру или функцию и присваивать её значению but[i].OnClick.


Krema   (2011-09-25 19:34:00) [1]

Спасибо всем за советы и ссылки. Буду пробовать.


Омлет   (2011-09-25 19:19:00) [2]

Один end; лишний.

> Пока думаю писать процедуру или функцию и присваивать её значению but[i].OnClick.

Так и делай. Всем кнопкам один обработчик присвой, в котором по TButton(Sender).Tag или TButton(Sender).Caption определяй, что за кнопка нажата.


MBo   (2011-09-25 19:17:00) [3]

http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=342

>В линию получается а сеткой нет.
Значит, нужно, чтобы обе координаты менялись


Kolobok   (2011-09-25 19:17:00) [4]


> не понял...

Как сделать так что бы при нажатии определённой кнопки в массиве but[i]. делалось то что надо. Например выводило в edit1 число.


Омлет   (2011-09-25 19:16:00) [5]

В N столбцов как-то так:

for I := 0 to high(btns) do
begin
 with btns[I] do
   SetBounds((I mod N) * (Width + 5), (I div N) * (Height + 5), Width, Height);
 end;
end;


brother   (2011-09-25 19:01:00) [6]

> как такой правильно кнопке задавать обработчик событий

не понял...


brother   (2011-09-25 19:00:00) [7]

> одномерный массив кнопок

пока работай в режиме дизайнера, раз есть проблеммы с рантаймом


Наверх

Титульная страница Поиск, карта сайта Написать письмо