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

Вниз

Как убрать кнопку закрытия пристыкованной формы?   Найти похожие ветки 

 
Данил   (2002-12-04 12:14) [0]

Или как пристыковать форму так, чтобы не было возможности отсыковаться, переместить и закрыть ее?
Спасибо.


 
Skier ©   (2002-12-04 12:16) [1]

>Данил

> пристыкованной формы

Что бы это значило ?
Немного подробней, плиз...


 
Данил   (2002-12-04 12:20) [2]

Есть панелька, на нее пристыковываю (Dock) фомочку. Хочу, чтобы пользователь не мог с формочкой ничего делать из вышеперечисленного.


 
Skier ©   (2002-12-04 12:27) [3]

>Данил

1) ...чтобы не было возможности переместить...

procedure TYourForm.WMSysCommand(var Message : TWMSysCommand);
begin
//игнорируем перемещение формы.
if (Message.CmdType and $FFF0) = SC_MOVE then begin
Message.Result := 0;
Exit;
end; //if
inherited;
end;

2) ...чтобы не было возможности закрыть ...
TForm.OnCloseQuery(...)



 
Данил   (2002-12-04 12:34) [4]

Спасбо, конечно, но это мне не очень подходит :(
У меня эта форма используется в нескольких местах, в одном мне нужно чтобы она нормально работала (как при.. так и отстыковывалась и т.д.), в другом нужно просто статически встроить ее в панель и использовать только для отображения результатов.


 
Skier ©   (2002-12-04 12:37) [5]

>Данил

А флажок у формы не можешь добавить ?

TFormDockType = (...) перечислимый тип (например)

TYourForm = class(...)
public
property FormDockType : TFormDockType...
end; //TYourForm


 
Данил   (2002-12-04 12:45) [6]

Эта можна, просто я думал, что такое дело должно быть предусмотрено.
Спасибо тебе, добр человек!


 
Рыжик ©   (2002-12-04 13:55) [7]

Для панельки, на которую пристыковываем форму OnDockDrop:
procedure TForm1.Panel1DockDrop(Sender: TObject; Source: TDragDockObject;
X, Y: Integer);
begin
Source.Control.Align:=alClient;
end;

После этого форму можно отстыковать только програмно.


 
Данил   (2002-12-04 15:42) [8]

Во! О чем я и говорил! То что доктор прописал... :))
Большое русское мерси!


 
Данил   (2002-12-04 15:57) [9]

To Рыжик:
А не подскажешь ли мне, о прекраснейшая из приекрасных, как сделать так, чтобы когда закрываешь пристыкованную форму нажатием на ее кнопочку с крестиком :), можно было изменить размер панельки , ее содержащей, и сделать еще кое-какие действия? Короче надо как-то отследить это событие.


 
Рыжик ©   (2002-12-05 07:11) [10]

Panel.OnUnDock - просто отстыковка
Чтобы отловить закрытие оно не подходит, так как форма может остаться пристыкованной, но только невидимой. Можно проверять
HostDockSite=Panel в Form.OnClose - это и будет требуемое событие.
Ещё можно переопределить DoRemoveDockClient для панели, но опять же оно будет срабатывать при закрытии только если форма уничтожается, а не делается невидимой (т.е. для OnClose Action:=caFree)


 
Рыжик ©   (2002-12-05 07:34) [11]

А OnUnDock не происходит даже если форма уничтожается при закрытии.



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

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

Наверх




Память: 0.49 MB
Время: 0.011 c
6-51871
izhalex
2002-10-07 18:00
2002.12.16
определить возможность подключения clientsocket к serversocket


1-51689
Filat
2002-12-03 19:41
2002.12.16
Backup - как его организовать на Дельфи, и разный ли он?


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


14-51962
id_privin
2002-11-26 13:13
2002.12.16
Переход D5->D7


7-51983
dronas555
2002-10-15 01:30
2002.12.16
Память