Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.04.29;
Скачать: [xml.tar.bz2];

Вниз

Кто-нить знает как юзать LB_GETTEXT?   Найти похожие ветки 

 
Velocity   (2002-02-20 05:50) [0]

Сабж, только сильно не бейте, понимаю, что достал уже этим вопросом, но больше обратиться некуда. Последний параметр в этой мессаге - буфер (или указатель на него?), куда будет возвращена строка из LISTBOXа (в SDK так написано). Если в качестве буфера брать string - буфер всегда пустой, если PChar - вообще ошибка вылетает. Вызываю так:

SendMessage(хендл листбокса,LB_GETTEXT,номер строчки,integer
(buffer));

Кто знает - подскажите ПРАВИЛЬНЫЙ формат вызова сей команды. Заранее спасибо.


 
Suntechnic   (2002-02-20 06:55) [1]

PChar туда передавть надо. Только память выделить не забывай.


 
Evgeny   (2002-02-20 07:11) [2]

можно и так:

var
I : Integer;
CurDir : array[Byte] of Char;
...
I := SendMessage(lParam, LB_GETCURSEL, 0, 0);
SendMessage(lParam, LB_GETTEXT, I, Integer(@CurDir));
...


 
MBo   (2002-02-20 07:52) [3]

непременно перед LB_GETTEXT надо узнать длину с помощью
LB_GETTEXTLEN и, как Suntechnic прописал, выделить память под PChar(len+1 байт)


 
Evgeny   (2002-02-20 08:09) [4]

MBo
непременно перед LB_GETTEXT надо узнать длину


Как сказано в справке:

An LB_GETTEXTLEN message can be sent before the LB_GETTEXT message to retrieve the length, in characters, of the string.

Сообщение LB_GETTEXTLEN может быть послано перед сообщением LB_GETTEXT, чтобы извлечь длину строки.

так что, чаще всего достаточно иметь предопределенный массив.


 
MBo   (2002-02-20 08:42) [5]

>Evgeny
согласен, если длины хватает, но непременно поставил, так как в исходном вопросе было про ошибку с PChar -скорее всего из-за этого


 
Evgeny   (2002-02-20 11:23) [6]

Возможно и так


 
Velocity   (2002-02-21 05:02) [7]

>All
Спасибо огромное, научили балбеса. А то замучился уже. Еще раз спасибо.



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

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

Наверх









Память: 0.83 MB
Время: 0.024 c
1-94427
velial
2002-04-17 22:22
2002.04.29
процедуры


4-94605
Ogu
2002-02-20 22:05
2002.04.29
AVI на АПИ


3-94341
Alex Y
2002-04-10 04:35
2002.04.29
SQL запрос


3-94346
62mkv
2002-04-10 10:27
2002.04.29
Ребята, есть ли у кого-нибудь отдельный дистрибут QReport 3 ?


3-94316
fishka
2002-04-09 10:26
2002.04.29
Перевод базы с InterBase5.0 на InterBase 6.0





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский