![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| awilum |
|
||||||||
![]() Open Source Evangeli ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 5.10.2008 Репутация: нет Всего: нет |
Пишу GUI к своему движку. Сделал класс кнопки.
в программе создаю несколько кнопочек при инициализации
в таймере(он у меня на WINAPI) проверяются все обновления программы. вот там я вызываю проверки для каждой кнопки
рисую кнопки в отдельной процедуре Render
Значит при наведении курсора на кнопки срабатывает OnMouse; для каждой кнопки и кнопка меняет вид, как и должно быть. А вот почему то OnClick; срабатывает только для первой кнопки, для остальных ноль реакции. В чем может быть проблема ? Это сообщение отредактировал(а) awilum - 9.5.2009, 14:00 |
||||||||
|
|||||||||
| Louken |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 13.9.2008 Где: Кострома Репутация: 1 Всего: 1 |
awilum
Потому что:
В момент проверки для других кнопок, 0-ая кнопка мышки перестает быть нажатой. Будь внимателен. |
|||
|
||||
| pseud |
|
||||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 10 Всего: 40 |
код нечитабелен:
пиши так:
-------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
||||
|
|||||
| awilum |
|
||||||
![]() Open Source Evangeli ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 5.10.2008 Репутация: нет Всего: нет |
ChekBox не работает. Работает только то то что картинка только меняется. Нажал картинка поменялась на зачеркнутый квадратик еще раз нажал картинка без крестика, как и должно быть в CheckBox
Но реакции на включен CheckBox или не включен нет.
.....
таймер
Это сообщение отредактировал(а) awilum - 11.5.2009, 12:39 |
||||||
|
|||||||
| Louken |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 13.9.2008 Где: Кострома Репутация: 1 Всего: 1 |
awilum
Какой ужас
Не проще ли
А рисовать
И тут что за бред
Снова наступаешь на теже грабли, что и в нулевом посте Научись уже наконец сам проверять свой код, банально можно пробежаться и в уме прикинуть, что должно происходить, после исполнения каждой строчки, тогда и не будешь допускать таких нелепостей. Или ты думаешь, что тебе весь твой "движок" будут так исправлять. |
||||||||
|
|||||||||
| awilum |
|
|||
![]() Open Source Evangeli ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 5.10.2008 Репутация: нет Всего: нет |
Я всегда раньше писал и кнопки и чекбоксы прям в самой игре. Но вот сейчас переписываю движок на котором делал свои игры и решил, что лучше будет все эти кнопки, чекбоксы и тд.. разместить в отдельном модуле GUI engine. что бы игру не засорять повторяющемся кодом тем самым повысить удобство в использовании и читабильность кода.
Всегда писал в играх вот так if age.input.But[0] then begin age.input.But[0] := false; ///----- обработка ----------------//// end;
И это нормально работает А в модуле GUI который сейчас пишу , почему то это все не работает |
|||
|
||||
| Qu1nt |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 13.1.2007 Репутация: 18 Всего: 50 |
Сам подход неверен.
Правильней - запрограммировать коллекцию, которая будет обрабатывать всякие разные графические компоненты. Кликательные и нажимательные эвенты реализовать через события. |
|||
|
||||
| Louken |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 13.9.2008 Где: Кострома Репутация: 1 Всего: 1 |
awilum
Сам посуди, нестыковочка какая то
Соотнеси те строчки кода, которые я выделил, так у тебя ни для кнопок ни для чекбоксов клики мышки обрабатываться не должны вообще.
Почему не работает смотри чуть выше Qu1nt
+1 |
||||||
|
|||||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |