![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Как сделать окна, как в IDE Delphi? Что бы в верху было основное окно, а остальные (Object Inspector и т.д.) можно было перетаскивать по своему усмотрению, либо совсем закрывать?
Киньте ссылку где почитать? |
#2
|
||||
|
||||
![]() Просто создай три формы, одну расположи сверху, остальные - где хочется, при этом основной (первой) формой сделай верхнее окно. Тогда ты их все таскать и закрывать сможешь, но если закроешь верхнее окно, закроются все. Я так понимаю. тебе это нужно?
|
#3
|
|||
|
|||
![]() Это понятно.
А как сделать что бы окна можно было объединять? |
#4
|
||||
|
||||
![]() объединять? это ты что имеешь в виду?
|
#5
|
|||
|
|||
![]() |
#6
|
||||
|
||||
![]() суть в чем - сделай две (или более) форм, и обработай событие перемещения окна (при перемещении сначала вызывается OnCanResize, затем - OnConstrainedResize) и если окно оказывается у заголовка другого окна (например перетаскиваешь Form2 на Form1) то (если ты кидаешь на формы PageControl) создаешь новую вкладку, копируешь туда данные с перетаскиевамой формы и у формы делаешь Form2.Visible:=false;
учти, чтобы юзать одну форму из другой надо после {$R *.dfm} добвить: uses Unit1; //или любой другой |
#7
|
|||
|
|||
![]() Вообщем делаем например 2 формы
1-я как говорилось выше основная, 2-я открывается по show; далее обрабатываем события события перемещения окна ну а остальное то что тебе надо например делаем так: Код:
procedure TForm1.Button1Click(Sender: TObject); begin form2.Show; end; procedure TForm1.Button2Click(Sender: TObject); begin form2.Parent:=panel1; form2.Top:=1; form2.Left:=1; end; думаю код вполне понятен ![]() после его выполнения форма2 будет внутри панели. Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение" |
#9
|
|||
|
|||
![]() Я не уверен что это MDI. В Delphi 2010 может и MDI, а вот в 7-ке точно по другому сделано.
|
#10
|
||||
|
||||
![]() Цитата:
Не твори зла, и жизнь повернется к тебе передом ![]() |
#11
|
|||
|
|||
![]() 2 Bars1992
причем тут MDI? вопрос в построении форм как в IDE DElphi вроде. тут MDI и не пахнет. 2 Rat с объединением окон получилось? Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение" |
#12
|
|||
|
|||
![]() Пока нет. Сегодня вечером попробую.
|
#13
|
|||
|
|||
![]() Нашел ответ в книге "Delphi 6 и Kylix. Библиотека программиста", Автор: Сергей Бобровский. Глава: Панели и декоративные элементы. Механизмы перетаскивания и стыковки.
Есть три параметра у форм и панелей: DockSite, DragMode, DragKid. Если всё выставить в автомат, то будет как в этом примере для D2010. Можно все эти вещи контролировать. В общем ниже глава из книги: Цитата:
Устал набирать. ![]() P.S. Так то Bars1992 в чем то был прав: Цитата:
|