Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Вниз

ListBox на WinAPI 


Velocity   (2002-02-18 10:12) [0]

Привет всем! Помогите разобраться с такой проблемой - создаю объект ListBox на апи со списокм файлов корня С:\. Потом пытаюсь этот список обычными окнами вывести на экран - и окна вылазят пустые. Количество окон правильное - столько, сколько файлов и директорий в корне, т.е. ListBox вроде заполняется... Но LB_GETTEXT возвращает в item пустую строку. Что я делаю не так?
---собственно весь код---
var
i,res:Cardinal;
buffer:array [0..511] of Char;
item,p:string;
ListBox:HWND;
counter:Word;
t:Byte;
begin
p:="c:\*.*";
ListBox:=CreateWindow "ListBox",nil,LISTBOX,0,0,0,0,0,0,hInstance,nil);
SendMessage(ListBox,LB_RESETCONTENT,0,0);
SendMessage(ListBox,LB_DIR,DDL_DIRECTORY or DDL_ARCHIVE or DDL_HIDDEN or DDL_SYSTEM or DDL_READONLY,Longint(p));
counter:=SendMessage(ListBox,LB_GETCOUNT,0,0);
for t:=0 to counter do begin
item:="";
SendMessage(ListBox,LB_GETTEXT,t,Longint(item));
MessageBox(0,PChar(item),PChar("title"),MB_OK);
end;
DestroyWindow(ListBox);
end;



Velocity   (2002-02-19 05:49) [1]

Неужели никто не знает? Неохота юзать StdCtrls...



Suntechnic   (2002-02-19 06:43) [2]

Последний параметр в SendMessage(ListBox,LB_GETTEXT,t,Longint(item));
это не string а PChar. У тебя вон там какой-то массив Char обьявлен, только что-то не видно где он используется.



Evgeny   (2002-02-19 06:54) [3]

var
CurDir : array[byte] of Char;

...
GetCurrentDirectory(SizeOf(CurDir), CurDir);
DlgDirList(Wnd, CurDir, ListBox, 0, DDL_DIRECTORY);
...
ListBox - идентификатор
Wnd - хэндл окна, содержащего ListBox

Это будет работать.



Velocity   (2002-02-19 11:24) [4]

>All
Большое спасибо, щас попробую...




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.017 c
1-69903           Юляша                 2002-04-07 19:53  2002.04.22  
Дробное число в SpinEdit


1-69780           Бульбаш               2002-04-10 10:17  2002.04.22  
Не пойму куда делись компонеты. Поставил вчера шестерку,


1-69876           zombi                 2002-04-08 11:39  2002.04.22  
Сохранение текста из richedit в .txt


7-70051           Asker                 2001-10-02 07:09  2002.04.22  
Autorun


14-70027          lipskiy               2002-03-18 17:04  2002.04.22  
Маленький вопросик про Outlook Express