Автор
|
Тема: CListCtrl
|
mrwel |
опубликован 23-05-2001 12:36 MSK
Как отловить на CListCtrlе отпускание клавиши !?
|
Jimmy
|
опубликован 23-05-2001 14:32 MSK
CListCtrl - потомок CWnd, so, порождаешься от CListCtrl и ловишь соотв. событие как для окна. |
mrwel
|
опубликован 25-05-2001 06:28 MSK
Да я сделал так , как ты сказал ! По отпусканию вызывается событие :)) Спасибо ! Но!!! Дело в том что мне необходимо узнать содержимое строки на которой я отпустиль клавишу :)) Что посоветуешь !? Спасибо ещё раз ! |
Jimmy
|
опубликован 25-05-2001 10:01 MSK
GetItemRect возвр. координаты итема. Пробегаешь по итемам и проверяешь, в какой "попала" мышь.Лучше для быстроты по Selected итемам пробегать юзая GetFirstSelectedItemPosition и GetNextSelectedItem Это то, что на вскидку в голову пришло. Если поизучать повнимательнее CListCtrl Class Members в MSDN, может найдется более опт. варант good luck |
foreverchild
|
опубликован 25-05-2001 11:44 MSK
Хаюшки,На самом деле тебе всего навсего нужно сделать следующее: у класса CListBox есть функция GetCurSel(), возвращающая номер строки (int). Еще у него есть функция (хммм...гммм) кажется она называется SelectString( int id). Вот собственно говоря и все... |
Jimmy
|
опубликован 25-05-2001 12:35 MSK
хм... странное дело... Дело в том что я на C++ где-то с пол года не делал ничего, но в памяти сразу возникло что-то типа GetCurSel, однако!.. просматривая CListCtrl на мсдн онлайн НЕ УВИДЕЛ этой функции. Подумал, что спутал с чем-то еще... Или лыжи у меня не едут из-за некоторого недосыпа, или микрософт с некоторык пор засекретило эту функцию.2 mrwel: я когда-то делал как сказал foreverchild luck |
Jimmy
|
опубликован 25-05-2001 12:41 MSK
СТОП! GetCurSel - это для CListBox. Для CListCtrl - не прокатит. Вот.Да простит меня микрософт. И лыжи едут в правильном направлении..., только по странной траектории |
mrwel
|
опубликован 25-05-2001 13:09 MSK
Печаль мне !!! Какой ЛистВокс !? У меня ведь СиЛистКтрл !!!Печаль ! |