Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

Как получить элемент ListBox a???   Найти похожие ветки 

 
Cosmic ©   (2002-11-24 21:58) [0]

Как получить текст (в смысле значение) выделенного элемента ListBox"a при его выделении? ListBox создан при пом. CreateWindow. В обработке сообщения пишу так:


var
FoldersListBuffer: array [1..255] of Char;
Folders: integer; // handle listbox"a
...
wm_command :
begin
if (lParam = Folders) then
begin
Selection := SendMessage(Folders,LB_GETCURSEL,0,0);
SendMessage(Folders,LB_GETTEXT,Selection,Integer(@FoldersListBuffer));
MessageBoxA(0,PChar(@FoldersListBuffer),"www",0);
end;
...


Выдает два пустых MessageBox"a. Что я делаю неправильно?


 
MBo ©   (2002-11-24 22:18) [1]

procedure TForm1.LB1Click(Sender: TObject);
var
Buffer: array [0..255] of Char;
Selection:Integer;
begin
Selection := SendMessage(LB1.Handle,LB_GETCURSEL,0,0);
SendMessage(LB1.Handle,LB_GETTEXT,Selection,Integer(@Buffer));
MessageBox(0,Buffer,"www",0);
end;


 
apay ©   (2002-11-25 00:12) [2]

(из хелпа!)
An LB_GETTEXTLEN message can be sent before the LB_GETTEXT message to retrieve the length, in characters, of the string.
Return Values
The return value is the length of the string, in characters, excluding the terminating null character. If index does not specify a valid index, the return value is LB_ERR.
Remarks
If you create the list box with an owner-drawn style but without the LBS_HASSTRINGS style, the buffer pointed to by the lpszBuffer parameter will receive the 32-bit value associated with the item (the item data).

если пишешь на WinAPI, внимательней с созданием окошек.

2 MBo © (24.11.02 22:18)
если юзать VCL, зачем вся эта бадья?



 
MBo ©   (2002-11-25 00:18) [3]

>apay
>если юзать VCL, зачем вся эта бадья?
Он неправильно выводил Buffer в MessageBox, поэтому я тестовый пример сделал



Страницы: 1 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-37201
DieHard
2002-12-30 14:50
2003.01.13
Объявление типов в Delphi и C Builder


14-37362
Aristarh
2002-12-24 21:20
2003.01.13
Help, please! Как повторно вызвать окно авторизации


4-37434
SYNthetic
2002-11-21 17:45
2003.01.13
Обновление устройств Plug&Paly


3-36989
Fishka
2002-12-18 16:11
2003.01.13
Заполнение Мемо-поля через DBMemo


6-37260
kalishenko stas
2002-11-14 15:03
2003.01.13
Проблема с сокетами