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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.07.2012, 13:36   #1
NewBoy
Пользователь
 
Аватар для NewBoy
 
Регистрация: 12.06.2012
Сообщений: 41
Печаль Вопрос по Label

Спасибо тем кто зашёл в тему помочь мне.

Я хочу сделать вменяемый интерфейс для своей программы. Мне нужно, чтобы по нажатию на клавишу, к примеру, F1 текст менялся с OFF на ON , а при повторном нажатии клавиши F1 обратно с ON на OFF.

Умоляю, объясните как это сделать, в том числе, чтобы надписи были цветными...
NewBoy вне форума Ответить с цитированием
Старый 16.07.2012, 15:02   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Среда какая?
Для билдера:
Код:
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 16.07.2012, 15:21   #3
NewBoy
Пользователь
 
Аватар для NewBoy
 
Регистрация: 12.06.2012
Сообщений: 41
По умолчанию

Ой блин, извергните . Да, Borland C++ Builder.
Гром, спасибо. Объясни пожалуйста, как сделать, чтобы при нажатии клавиши F1 происходило это событие.

Извините за оффтоп. Не хочу засорять форум своими нубскими вопросами, поэтому спрошу тут.
Главная форма моей программы сделана на основе Image. В настройках формы Border Style: bsNone. Таким образом я никак не могу перетаскивать свою программу по рабочему окну. Как сделать, чтобы "хватаясь" за область, выделенную на скриншоте фиолетовым цветом, можно было перетаскивать программу по рабочему пространству.


Помогите кто-нибудь...

Код:
{
if(GetAsyncKeyState( VK_NUMPAD1 ) &1 )
{
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
}
Как сделать, чтобы при повторном нажатии F1 выполнялось:
Код:
Label1 -> Caption = "OFF";
Label1 -> Font -> Color = clRed;
А при следующем нажатии сного:
Код:
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
И так до бесконечности с ON на OFF с OFF на ON, мне нужно сделать переключатель, второй день уже мучаюсь.

Последний раз редактировалось Stilet; 17.07.2012 в 20:34.
NewBoy вне форума Ответить с цитированием
Старый 17.07.2012, 11:57   #4
Last
В прострации
Форумчанин
 
Регистрация: 13.01.2009
Сообщений: 239
По умолчанию

Можно попробовать сложнейшим способом:
Код:

if (Label1 -> Caption == "ON")
{
Label1 -> Caption = "OFF";
Label1 -> Font -> Color = clRed;
}
else
{
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
}
Пол-жизни сидючи, в монитор глядючи...
Last вне форума Ответить с цитированием
Старый 17.07.2012, 12:42   #5
NewBoy
Пользователь
 
Аватар для NewBoy
 
Регистрация: 12.06.2012
Сообщений: 41
По умолчанию

Спасибо за ответ, а куда этот код ставить, я попробовал просто после
Код:
if(GetAsyncKeyState( VK_NUMPAD1 ) &1 )
{
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
}
Не помогло
NewBoy вне форума Ответить с цитированием
Старый 17.07.2012, 13:16   #6
Krok27
Форумчанин
 
Аватар для Krok27
 
Регистрация: 08.07.2010
Сообщений: 505
По умолчанию

Цитата:
Спасибо за ответ, а куда этот код ставить
В событие OnKeyPress.
Знающий не говорит, говорящий не знает (С) Лао Цзы
Krok27 вне форума Ответить с цитированием
Старый 17.07.2012, 13:40   #7
NewBoy
Пользователь
 
Аватар для NewBoy
 
Регистрация: 12.06.2012
Сообщений: 41
По умолчанию

Цитата:
Сообщение от Krok27 Посмотреть сообщение
В событие OnKeyPress.
Спасибо, что ответил.
Да, это прекрасно работает с компонентами, к примеру с Button или Label, если на них кликать.
Я кидаю в таймер этот код
Код:
if(GetAsyncKeyState( VK_NUMPAD1 ) &1 )
{
Label1 -> Caption = "ON";
Label1 -> Font -> Color = clLime;
Он проверяет не нажата ли клавиша нум1. Таким образом я не совсем понял где мне найти это событие, я же не с компонентом работаю
NewBoy вне форума Ответить с цитированием
Старый 17.07.2012, 14:48   #8
Krok27
Форумчанин
 
Аватар для Krok27
 
Регистрация: 08.07.2010
Сообщений: 505
По умолчанию

А форма не компонент что ли?
OnKeyPress
Знающий не говорит, говорящий не знает (С) Лао Цзы

Последний раз редактировалось Krok27; 17.07.2012 в 14:53.
Krok27 вне форума Ответить с цитированием
Старый 17.07.2012, 15:15   #9
NewBoy
Пользователь
 
Аватар для NewBoy
 
Регистрация: 12.06.2012
Сообщений: 41
По умолчанию

Крок, твой способ работает, но теперь нажимая любую клавишу происходит переключение( Как задать конекретную клавишу??? Ответь пожалуйста
NewBoy вне форума Ответить с цитированием
Старый 17.07.2012, 16:04   #10
Krok27
Форумчанин
 
Аватар для Krok27
 
Регистрация: 08.07.2010
Сообщений: 505
По умолчанию

Цитата:
происходит переключение(
Куда переключение?

Код:
if(Key == VK_NUMPAD1)
{
  Label1 -> Caption = "ON";
  Label1 -> Font -> Color = clLime;
}
Знающий не говорит, говорящий не знает (С) Лао Цзы

Последний раз редактировалось Krok27; 17.07.2012 в 16:06.
Krok27 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по Label noob_11 Помощь студентам 0 14.05.2010 16:58
Глупый вопрос о delphi. Не отображается Label MarihuanaP Помощь студентам 9 27.10.2009 21:36
При расположении Label на компонентах, место под Label, не реагирует на событие onClick. NavigatorNeba Компоненты Delphi 3 15.11.2008 19:56
Label PROGR Компоненты Delphi 3 18.05.2007 22:25
Вопрос по label. Как сделать так чтобы label была прозрачной. Lonix Компоненты Delphi 2 01.04.2007 06:23