Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.02.2009, 14:59   #1
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию Вопрос по процедуре Delphi

Какая процедура нужна для того чтобы после нажатия кнопки, она становилась неактивной (т.е. ее видно по прежнему, но нажать повторно на нее нельзя)?
Evgenii вне форума Ответить с цитированием
Старый 11.02.2009, 15:01   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А вы посмотрите в хэлпе, какие у кнопки есть свойства. По-моему, ENABLED именно то, что вам нужно...
Не манкируйте хэлпом - он весьма хорош и даст ответы на 90% ваших вопросов. Единственное условие - самому представлять, что именно вам нужно получить в результате.
А процедуру вы уже назвали - обработчик нажатия на кнопку. И там нужно просто присвоить свойству нужное значение.

Последний раз редактировалось mihali4; 11.02.2009 в 15:04.
mihali4 вне форума Ответить с цитированием
Старый 11.02.2009, 15:03   #3
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

нет, при enabled она совсем исчезает, visible и hint тоже не подходят. они полностью скрывают кнопку, а мне нужно чтобы она была видна
Хотя, enabled-правда делает кнопку неактивной. Меня сбило с толку что на моей кнопке рисунок, который пропадает при использовании этой процедуры. Из-за этого возникла неясность
Можно ли как-то использовать enabled без потери картинки на кнопке?

Последний раз редактировалось Evgenii; 11.02.2009 в 15:11.
Evgenii вне форума Ответить с цитированием
Старый 11.02.2009, 16:10   #4
AndrzejX
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 55
По умолчанию

Используй какой-нибудь признак того, что кнопка нажималась, например, свойство кнопки Tag, и в зависимости от него выполняй обработчик. Enabled при этом не нужно.
AndrzejX вне форума Ответить с цитированием
Старый 11.02.2009, 16:35   #5
Шульц
Форумчанин
 
Регистрация: 14.09.2008
Сообщений: 172
По умолчанию

Сделай картинку в два раза больше. То есть если у тебя есть папка 17х17, то сделай рисунок 34х17 с двумя одинаковыми чайниками, на спидботонах работает вроде.
Шипулин А. В.
Шульц вне форума Ответить с цитированием
Старый 11.02.2009, 16:58   #6
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

Цитата:
Сделай картинку в два раза больше. То есть если у тебя есть папка 17х17, то сделай рисунок 34х17 с двумя одинаковыми чайниками, на спидботонах работает вроде.
Чтото я не совсем понял такой вариант. Можно как-нибудь доступней объяснить?
Evgenii вне форума Ответить с цитированием
Старый 11.02.2009, 17:05   #7
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
Сообщение от Evgenii Посмотреть сообщение
Какая процедура нужна для того чтобы после нажатия кнопки, она становилась неактивной (т.е. ее видно по прежнему, но нажать повторно на нее нельзя)?
Исходя из Вашего вопроса пост #2 - это исчерпывающий ответ. Свойство Enable в значении false красит контрол в серый цвет и делает неактивной - нажать нельзя ... исчезать кнопка не может в этом !
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 11.02.2009, 17:14   #8
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Цитата:
нет, при enabled она совсем исчезает
врете вы все.
Где вы нашли здесь убирание видимости компонента?

Код:
procedure TWinControl.CMEnabledChanged(var Message: TMessage);
begin
  if not Enabled and (Parent <> nil) then RemoveFocus(False);
  if HandleAllocated and not (csDesigning in ComponentState) then
    EnableWindow(WindowHandle, Enabled);
end;
.....
function EnableWindow; external user32 name 'EnableWindow';
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи

Последний раз редактировалось Квэнди; 11.02.2009 в 17:17.
Квэнди вне форума Ответить с цитированием
Старый 11.02.2009, 17:35   #9
Evgenii
Форумчанин
 
Аватар для Evgenii
 
Регистрация: 04.01.2008
Сообщений: 201
По умолчанию

я имел ввиду что исчезает картинка
Evgenii вне форума Ответить с цитированием
Старый 11.02.2009, 17:42   #10
начинающий кодер
только учусь!
Форумчанин
 
Аватар для начинающий кодер
 
Регистрация: 08.02.2009
Сообщений: 124
По умолчанию

привяжи к кнопке 2 изображения! когда доступна и когда нет и будет тебе счастье
«Я знаю, что ничего не знаю, но многие не знают и этого».
начинающий кодер вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос по процедуре randomize Evgenii Общие вопросы Delphi 2 05.02.2009 19:24
Вопрос по процедуре VenMaster Общие вопросы Delphi 5 13.06.2008 17:37
вопрос по процедуре GotoXY и TextAttr и Mister Been Паскаль, Turbo Pascal, PascalABC.NET 8 03.06.2008 10:52
Ошибка в процедуре GAGARIN-NEW Помощь студентам 2 21.12.2007 09:23