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

Вниз

Code completion   Найти похожие ветки 

 
Sokoloff   (2002-07-04 17:19) [0]

Люди, необходимо сделать "Code completion" как в delphi.
То что нужно добавить ListBox я знаю, вопрос в другом.
ListBox обрезается по форме, т.е. видна только часть listbox-а в пределах формы.
Как можно сделать видимой часть listbox-а за пределами формы?


 
Игорь Шевченко ©   (2002-07-04 17:42) [1]

При вызове ListBox"а ему надо сказать SetParent(HWND_DESKTOP), тогда он может вылезать за пределы формы. Перед этим сказать Parent := nil


 
Sokoloff   (2002-07-04 19:05) [2]

Спасибо, за ответ.


procedure listset;
begin
//form1.ListBox1.Parent := nil;
SetParent(form1.ListBox1.Handle, HWND_DESKTOP);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
listset;
end;

Правильно я вас понял?
Но, если написать Parent:=nil, выпадает ошибка "Control "ListBox1" has no parent window".
Без этой строки все ок.
Еще вопрос, поменял я парента, потом кликаю на форме и листбокс уходит по нее, при щелчке на листбоксе он не всплывает вперед. Как его выдвинуть?


 
Volj ©   (2002-07-04 19:14) [3]

"листбокс уходит по нее" -
Попробуй:
SetWindowPos(form1.ListBox1.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);


 
Sokoloff   (2002-07-04 19:26) [4]

Извините за назойливость, но еще проблема теперь listbox не риагирует на внешние раздражители (мыш и клавиатура). Надо ставить хуки, или можно проще сделать?


 
Volj ©   (2002-07-04 19:28) [5]

windows.SetFocus(form1.ListBox1.Handle)


 
Sokoloff   (2002-07-04 19:37) [6]

Неправильно я написал, после всех манипуляций в панели задач появляется еще одна (без иконки и названия) и если ее активизировать то listbox начинает реагировать на мыш и клаву.
Главная форма при этом становиться неактивной.
Не проще тогда создать форму с borderStyle:=bsNone?
А как сделано выпадающий список у Combobox?
Я пытался разобраться в исходниках, но IMHO там черт ногу сломит.


 
Volj ©   (2002-07-04 19:39) [7]

"Не проще тогда создать форму с borderStyle:=bsNone"
Конечно, проще.
"А как сделано выпадающий список у Combobox"
А зачем в контексте задачи?


 
Юрий Зотов ©   (2002-07-04 19:40) [8]

Проставьте ListBox"у стиль WS_POPUP. Или посмотрите, как открывает список ComboBox.


 
tsarevep ©   (2002-07-05 10:13) [9]

А вообще есть куча библиотек с этими данными. Когда то я тоже пробывал. Но вопрос за вопросом возникал по мере продвижения и багов все больше и больше. Просто скачай какую нибудь библиотеку с исходными кодами. Например R&A Lib, и посмотри как это делается!



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

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

Наверх




Память: 0.48 MB
Время: 0.009 c
14-58283
lak_b
2002-06-21 14:43
2002.07.18
Slang


6-58245
Slavok
2002-05-10 13:59
2002.07.18
Как лучше передать от сервера клиенту изображение рабочего стола?


14-58318
irmantukas
2002-06-22 18:35
2002.07.18
Помогите ! Нужен декомпилятор


4-58369
mari_ra
2002-05-20 11:23
2002.07.18
Повторный вызов CreateEnhMetaFile


1-58093
MSAlex
2002-07-08 14:58
2002.07.18
Как импортировать тип или класс из DLL?