Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / WM_KEYDOWN / 11 сообщений из 11, страница 1 из 1
03.05.2013, 18:30
    #38247324
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
Есть обработчик изменения строки компонента ValueListEditor, в котором нужно прописать определенную последовательность действий при нажатии клавиши Enter. Прочитал, что это делается с помощью функций WinApi c которыми я никогда не сталкивался. В хелпе описания этих функций нету, в справочнике по WinApi, который я скачал, конкретно про WM_KEYDOWN тоже ничего нет. В интернете нормальных примеров которые бы заработали у меня в функции я не нашел- такое ощущение, что их приводят уже для подоготовленного человека. Большая просьба модифицируйте следующую функцию, чтобы у меня хотя бы был нормальный пример как работать с функциями WinApi(вывод в Label по нажатию Enter):
Код: plaintext
1.
2.
3.
4.
void __fastcall TForm1::ChangeSTR(TObject *Sender)
{
Label1->Caption="Enter Нажат";
}
...
Рейтинг: 0 / 0
03.05.2013, 18:38
    #38247331
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
Точнее так:
Код: plaintext
1.
2.
3.
4.
5.
void __fastcall TForm1::ChangeSTR(TObject *Sender, int ACol, int ARow,
      const AnsiString Value)
{
Label1->Caption="Enter Íàæàò";
}
...
Рейтинг: 0 / 0
03.05.2013, 19:18
    #38247366
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
kab18Прочитал, что это делается с помощью функций WinApi

Где ты прочитал такую чушь? Открой для себя справку о OnKeyPress.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
03.05.2013, 20:10
    #38247393
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
kab18,

Как всегда, из дельфо-писателей исходит лишь непостижимый слабо связанный бред, на который отвечать нет никакого смысла.
...
Рейтинг: 0 / 0
03.05.2013, 20:33
    #38247409
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
MasterZivkab18,
Как всегда, из дельфо-писателей исходит лишь непостижимый слабо связанный бред, на который отвечать нет никакого смысла.
У меня есть компонент ValueListEditor, значения в колонках которого соответствуют значениям в массиве. Передо мной стоит задача- организовать возможность изменения значений в массиве посредством редактирования информации в колонках ValueListEditor. У этого компонента есть много событий, но насколько я понял использовать можно либо OnKeyPress либо OnSetEditText. В случае с OnKeyPress мне будет известна нажатая клавиша, но не известен индекс редактируемого элемента и как следствие придется перезаписывать весь массив. В случае с OnSetEditText индекс редактируемого элемента известен-как следствие не нужно перезаписывать весь массив, а только элемент с соответствующим индексом- но как заставить это работать по нажатию опредленной клавиши не понятно, так как в отличии от OnKeyPress в этот обработчик не передается значение нажатой клавиши- именно поэтому я и начал интересоваться функциями WinApi(если бы все это работало в консоле то никаких проблем не было бы). В интернете мало информации на счет этого компонента и судя по тому что я находил и видел в хелпе,метода ItemIndex(как в ListBox), который бы намного упростил задачу, у него нету.
...
Рейтинг: 0 / 0
03.05.2013, 20:39
    #38247413
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
kab18В случае с OnKeyPress мне будет известна нажатая клавиша, но не известен
индекс редактируемого элемента
Неужели ты нашёл способ редактировать не текущий элемент???
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
03.05.2013, 20:47
    #38247415
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
Dimitry Sibiryakovkab18В случае с OnKeyPress мне будет известна нажатая клавиша, но не известен
индекс редактируемого элемента
Неужели ты нашёл способ редактировать не текущий элемент???

Поля ValueListEditor заполняются в соответствие с информацией в определенном массиве. При редактировании определенного поля и нажатии определенной клавиши этот массив полностью перезаписывется в соответсвии с уже отредактированной информацией в ValueListEditor. Но проблемма именно в том что массив перезаписывается полностью, а хотелось бы чтобы перезаписывалась только одна, только что отредактированная строка, а как узнать индекс этой строки в обработчике OnKeyPress я не знаю.
...
Рейтинг: 0 / 0
03.05.2013, 20:51
    #38247419
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
kab18как узнать индекс этой строки в обработчике OnKeyPress я не знаю.

А список свойств ты уже прочёл? В том числе и унаследованных от TCustomGrid?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
03.05.2013, 21:40
    #38247431
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
Dimitry Sibiryakovkab18как узнать индекс этой строки в обработчике OnKeyPress я не знаю.

А список свойств ты уже прочёл? В том числе и унаследованных от TCustomGrid?..

Да ValueListEditor1->Selection.*** то что нужно, благодарю.
...
Рейтинг: 0 / 0
03.05.2013, 21:55
    #38247433
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
kab18Да ValueListEditor1->Selection.*** то что нужно

Уверен, что простого Row тебе недостаточно?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
04.05.2013, 02:41
    #38247500
kab18
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WM_KEYDOWN
Dimitry Sibiryakovkab18Да ValueListEditor1->Selection.*** то что нужно

Уверен, что простого Row тебе недостаточно?..

Тоже подходит.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / WM_KEYDOWN / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]