Форум программистов
Реклама:
Контент-фильтр ИКС для учебных заведений.
Готовый набор правил для школ, фильтрация по спискам Роскомнадзора и Минюста. Соответствует ФЗ №436 и №139.
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > C++ Builder
Регистрация

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

Ответ
 
Опции темы
Старый 08.01.2017, 22:41   #1
Glebson
 
Регистрация: 22.12.2016
Адрес: Челябинск
Сообщений: 8
Репутация: 10
По умолчанию программно нажать Insert в отдельный RichEdit

Здравствуйте. Не могу понять, как отслеживать состояние переключаемой клавиши ( например Insert. )
Например: есть поле редактора , при событии OnClick() которого - переключить на режим замещения. Так же есть две метки Label1 и Label2 которые показывают состояние клавиши до и после.
Вот код:
Код:

void __fastcall TSDIAppForm::RichEdit2Click(TObject *Sender)
{
  SetInsertOn();
}
//---------------------------------------------------------------------------

void  TSDIAppForm::SetInsertOn()
{
	BYTE keyState[256];
	BYTE s;
		GetKeyboardState(keyState);   // считываем состояние
		s = keyState[VK_INSERT];      // клавиши
		Label1->Caption =s;

		 // Моделируем нажатие клавиши
		keybd_event( VK_INSERT, 0x45, KEYEVENTF_EXTENDEDKEY |
		0,0 );
		// Моделируем возврат клавиши в не нажатое состояние
		keybd_event( VK_INSERT, 0x45, KEYEVENTF_EXTENDEDKEY |
		KEYEVENTF_KEYUP, 0);

		GetKeyboardState(keyState);
		s = keyState[VK_INSERT];
		Label2->Caption =s;
}

состояние s до и после переключения равны. И изменяются только при другом вхождении в процедуру

Наверно надо использовать что то другое.
Glebson вне форума   Ответить с цитированием
Старый 09.01.2017, 08:14   #2
sarsen
Форумчанин
 
Регистрация: 04.08.2016
Сообщений: 55
Репутация: 10
По умолчанию

Поиграйтесь с эвентами в инспекторе, можете кинуть либо ещё, что кнопку обработчик, выставить не показывать, добавить евент на нажатие клавиши и тд.
sarsen вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программно нажать на Image mactepmac Помощь студентам 5 20.06.2011 11:12
Нажать программно win+L AlexeiDelejov Win Api 4 06.06.2010 10:02
Программно нажать на кнопку Marsel737 Общие вопросы Delphi 1 29.04.2010 20:38
программно нажать кнопку Dotha Общие вопросы Delphi 1 25.02.2010 18:56
Программно нажать кнопку DeDoK Общие вопросы Delphi 2 04.05.2008 21:46




12:25.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru