![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 31.12.2006
Сообщений: 114
|
![]()
Здравствуйте всем) помогите в проблеме, на форме есть более 20 кнопок, нужно вести учет нажатия по button т.е при нажатии по любой кнопке на форме нужно что бы счетчик увеличивал число которое будет находиться в edit на +1 как можно это реализовать ?
|
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 03.12.2009
Сообщений: 1,013
|
![]()
Вводите глобальную переменную.
Инициализируете ее нулевым значением. В обработчике событий onclick у каждой кнопки задаете инкремент данной переменной и здесь же соответственно меняете свойство text у edit'a на значение этой переменной ![]() |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 31.12.2006
Сообщений: 114
|
![]()
Огромное спасибо, очень помогло...
|
![]() |
![]() |
![]() |
#4 | |
Пользователь
Регистрация: 13.05.2009
Сообщений: 42
|
![]() Цитата:
1) Глобальные переменные это плохо. Почему. Вместо глобальных переменных стоит использовать property для класса формы. 2) Вешать событие на каждую кнопку? Ужас. Создайте одно событие и привяжите ко всем визуальнм компонентам. Для того что бы не быть голословным, я подготовил пример, взять который можно по этой ссылке: http://g-sirr.ru/q3w/TestProject.zip |
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 03.12.2009
Сообщений: 1,013
|
![]()
GSirr
У человека ведь изначально не стояла задача гнаться за рациональностью подхода к решению поставленной задачи ![]() А так, конечно же полностью с вами согласен. Но насчет глобальных переменных, собственно ничего уж страшного такого я и не увидел - если их здесь использовать. Тем более человек только осваивается - зачем ему раньше времени прыгать выше своей головы? |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#7 | ||
php / delphi
Форумчанин
Регистрация: 10.06.2007
Сообщений: 175
|
![]() Цитата:
![]() Цитата:
И вообще, господа, кто вас так учил нерационально оперативу расходовать! Давайте тогда уж учить человека смолоду жить правильно. Накопленное значение можно хранить в самом Edit'е в текстовом виде, а в обработчиках его прям там и увеличивать. Целых 4 байта экономия как-никак ))
G.Azamat { Web Development / Computer simulation }
Начинающий программист думает, что в килобайте 1000 байтов, а законченный уверен, что в километре 1024 метра. |
||
![]() |
![]() |
![]() |
#8 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
ибо форма станет привязанной к самой себе, и две формы не выйдет создать. а потом сыпется куча вопросов изза этого. проходили, лучше уже сразу привыкать. Цитата:
Цитата:
тут надо по задаче смотреть, ТС то молчит. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||
![]() |
![]() |
![]() |
#9 | |
php / delphi
Форумчанин
Регистрация: 10.06.2007
Сообщений: 175
|
![]()
Прошу прощения, просто развеселило. Поймите правильно, я не собирался с вами спорить, ибо тоже вижу в глобальности опасность возникновения неявных проблем. Но зло же не в глобальных переменных, а в их использовании не по назначению. Так что GSirr, по-моему, перегибает палку.
Цитата:
ps: Я собственно чего сказать-то хотел. Помнится, за goto настолько часто били по пальцам, что нынче из менее опытных программистов, мало кто может внятно сказать почему именно )) Бить начали только тогда, когда стало возможно заменить goto на Break/Continue (были введены, если не ошибаюсь только в TP7.0). Глобальные в частных случаях по-прежнему нужны, и так вот сразу категорично бить не стоит. Инкапсуляция, по-моему, довольно громоздкий способ борьбы с глобальностью, да и не очень дружелюбный для тех, кто помоложе ))
G.Azamat { Web Development / Computer simulation }
Начинающий программист думает, что в килобайте 1000 байтов, а законченный уверен, что в километре 1024 метра. |
|
![]() |
![]() |
![]() |
#10 | |
Пользователь
Регистрация: 13.05.2009
Сообщений: 42
|
![]()
InternetStranger, там же есть вложение, которое можно скачать и посмотреть.
Цитата:
А по поводу глобальных переменных Пепел Феникса прав, Это я и имел ввиду. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсчет кликов | prod | JavaScript, Ajax | 1 | 19.10.2011 10:35 |
Как привязать компоненту TComboBox к Button, чтобы при нажатии Button, данные из ComboBox вводились в TstringGrid | Marta_ | Помощь студентам | 2 | 15.10.2011 01:02 |
Автоматизация кликов по окну | sincemix | Общие вопросы Delphi | 10 | 03.08.2010 13:19 |
обработка кликов в treeview | CraZZy RabbIt | Общие вопросы Delphi | 2 | 28.03.2009 22:28 |
Отлов кликов мыши | LAFUDR | Помощь студентам | 9 | 24.05.2008 01:32 |