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

Вниз

Как открыть OpenDialog в нужном месте экрана? Что-то я торможу.   Найти похожие ветки 

 
DVM ©   (2002-12-02 17:05) [0]

Как открыть OpenDialog в нужном месте экрана? Что-то я торможу. У него свойств Left и Тор нету.
Обычно открываю так:
if OpenDialog.Execute then...


 
Marcus   (2002-12-02 17:10) [1]

Событие OnShow и пробовать MoveWindow(TForm(Sender).Handle, ...) или SetWindowPos


 
DVM ©   (2002-12-03 12:35) [2]

Не работает :(
Писал в обработчике события OnShow OpenDialog-a:

1 вариант: Postmessage(OpenDialog.Handle, wm_move, 1, 1);

2 вариант: MoveWindow(OpenDialog.Handle, 1,1, 400,300, true);
(размеры 400х300 от балды)

3 вариант: SetWindowPos(OpenDialog.Handle, HWND_TOP,1,1,400,300,SWP_NOSIZE);

Ни один вариант не двигает OpenDialog в угол.

Может, я что не так делаю?





 
Skier ©   (2002-12-03 12:52) [3]

>DVM

1)

OpenDialog1.Options := OpenDialog1.Options + [ofOldStyleDialog]

2)

procedure TForm1.OpenDialog1Show(Sender: TObject);
begin
SetWindowPos(OpenDialog1.Handle, HWND_TOP, 10, 10, 0, 0, SWP_NOSIZE);
end;


 
DVM ©   (2002-12-03 13:39) [4]

А нормальный OpenDialog нельзя подвинуть? А то этот, "старого образца" (ofOldStyleDialog) не совсем подходит, да и некрасивый он какой то.

Винда сама то OpenDialog-и двигает:

Пуск - Выполнить - Обзор, например.

Как сделать так???


 
DVM ©   (2002-12-03 14:05) [5]

Посмотрел в справке: у предка TDialog есть Position:TPoint,
Это как то можно "достать"?


 
Song ©   (2002-12-03 14:13) [6]

Наследником.


 
DVM ©   (2002-12-03 20:13) [7]

Наследником от TDialog? Непонятно, почему Borland этого не сделал? Вроде бы может понадобится.


 
PVOzerski ©   (2002-12-03 22:56) [8]

Помню одну тонкость, которую нашел в свое время случайно: handle этого компонента - на самом деле не Handle собственно окна диалога, а некоего его дочернего контрола - так что истинный хэндл я вытаскивал через GetParent(Handle). А тогда и MoveWindow должен заработать.


 
DVM ©   (2002-12-04 22:47) [9]

GetParent не работает!:(
Вроде бы все правильно:
MoveWindow(GetParent(OpenDialog.Handle),1,1,500,400,true);

Попробовал еще так:
f:=findwindow(nil,"Обзор"); //"Обзор" - название окна-диалога
MoveWindow(f,1,1,500,400,true);

Прогресс: OpenDialog поменялся в размерах, но поменялся как то криво, только его часть что-ли изменила размер.

Как подвинуть этот гребаный ДИАЛОГ?????????????????



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
1-51783
greenrul
2002-12-03 19:09
2002.12.16
Прозрачная ФОРМА, но не компоненты.


14-51927
LenaS
2002-11-22 22:30
2002.12.16
Проблемы с Delphi


1-51804
Зинец Виктор
2002-12-05 10:45
2002.12.16
про MDI-child


1-51719
Кирилл
2002-12-06 10:56
2002.12.16
мне нужно получить длину текста из Edit в пикселях...


14-51889
dkDimon
2002-11-20 16:09
2002.12.16
Delphi 7 Download