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

Вниз

Как сделать "плавающий" ToolBar   Найти похожие ветки 

 
leonidus   (2005-02-10 11:32) [0]

Мастера подскажите пожалуйста, нужно что бы на форме отображалось окошко ToolBar`а (не панель а именно окошко с крестиком в правом верхнем углу) которое можно было бы таскать по форме. Создаю ToolBar с кнопками все нормально, но во первых он без заголовка (хотя выставляю ShowCaption:=true) и не таскается. Глянул на пример которые идет в 6-й делфей, там два ToolBar`а и в runtime их можно "оторвать" от дока что бы получилось новое нужное мне таскающееся окошко, но мне надо что бы сразу после запуска программы такое окошко само появлялось и юзер не должен "отдирать" его от места прикрепления. Пожалуйста подскажите, очень нужно.


 
leonidus   (2005-02-10 12:51) [1]

Люди не дайте погибнуть!


 
Shirson ©   (2005-02-10 12:59) [2]

Создаёшь новую форму. (Например Form2)
В неё вставляешь тулбар.
В oncreat главной формы делаешь Form2.show;

Так устроит?

P.S. ShowCaption - это кэпшины кнопок и отношения к делу не имеют.


 
Юрий Зотов ©   (2005-02-10 13:05) [3]

Как сделать - просто настроить свойства по образцу примера.

А чтобы сразу был плавающим - при закрытии программы где-то (в реестре, INI-файле, БД и пр.) сохранять позицию тулбара, а при старте программы читать ее оттуда.


 
leonidus   (2005-02-11 10:47) [4]

>Shirson а не получилось... не хочет программа показывать окно второй формы пока первая не создалась - вылетает ошибочка и меня отсылают на
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.CreateForm(TForm2, Form2); <- вот тут ошибка
 Application.Run;


 
Александр Иванов ©   (2005-02-11 11:33) [5]

leonidus   (11.02.05 10:47) [4]
если следуешь совету [2], то просто удали эту строку.


 
Чапаев ©   (2005-02-11 12:32) [6]

ToolBar1.ManualFloat(ToolBar1.BoundsRect); -- оно?

ЗЫ. Я тут вот на днях с Drag-And-Dock разобрался окончательно и бесповоротно, задавай вопросы, если чё. ;-) chapaev@hotmail.ru


 
leonidus   (2005-02-11 13:16) [7]

Все проблему решил, просто в OnShow 1-й формы поставил Form2.show


 
Юрий Зотов ©   (2005-02-11 13:31) [8]

> leonidus   (11.02.05 13:16) [7]

> Все проблему решил, просто в OnShow 1-й формы поставил
> Form2.show

Но проблему не решил. Позже увидите это сами.


 
leonidus   (2005-02-14 10:08) [9]

не понял


 
msguns ©   (2005-02-14 10:49) [10]

>leonidus   (14.02.05 10:08) [9]
>не понял

1-я форма создается только 1 раз во время выполнения приложения ? Form 2 имеет StayOnTop ?


 
Юрий Зотов ©   (2005-02-14 11:20) [11]

> leonidus   (14.02.05 10:08) [9]

Юзер захочет придочить тулбар. Как на это среагирует Ваша Form2?


 
leonidus   (2005-02-15 14:40) [12]

да никак:) конечно это не решение проблемы т.к. собственно тулбарами тут вообще не пахнет их заменита вторая форма, но если с тулбарами других решений задачи нет то и вторая форма вполне пойдет


 
Юрий Зотов ©   (2005-02-15 15:42) [13]

> leonidus   (15.02.05 14:40) [12]
> но если с тулбарами других решений задачи нет...

[3] - это не решение?

Тулбары надо просто настроить так, чтобы они сами дочились и сами раздочивались, и чтобы хост-форма плавающих тулбаров тоже создавалась и уничтожалась сама. В VCL все для этого уже заточено, а как это сделать конкретно - см. в примере.

А позиции тулбаров (то есть, последние настройки юзера) надо просто сохранять при завершении и восстанавливать при старте. Как это обычно и делается.

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



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

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

Наверх




Память: 0.5 MB
Время: 0.033 c
14-1107858818
Lancelot
2005-02-08 13:33
2005.02.27
Графики выполнения проектов


1-1108315380
Kolan
2005-02-13 20:23
2005.02.27
Как положить контролы на PageControl


4-1105458325
Никита_
2005-01-11 18:45
2005.02.27
окна, сворачиваем/показвыаем


14-1107994235
Almaz
2005-02-10 03:10
2005.02.27
Однородность выборок


1-1108030234
Zhenja
2005-02-10 13:10
2005.02.27
QReport. Печать. Помогите пожалуйста.