Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Многооконное приложение, Проблема с fsMDIChild 
:(
    Опции темы
Vladimir_K
Дата 15.12.2006, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 2.12.2006

Репутация: нет
Всего: 1



Цитата(Guedda @  15.12.2006,  09:05 Найти цитируемый пост)
Да и не надо, чтобы он полностью отображался! Я теперь всё понял! Слушай! Родительская форма создана для того, чтобы размещать на себе TMainMenu, TPopupMenu, TTool и TCool Bars... И, конечно же, дочерние формы!
Но у тебя же главная форма содержит странные элементы, по типу Tedit, TMemo и так далее. 

Просто совет тебе:
Создай ещё одну форму (Form3), и покидай все эти контроллы туда! А главную форму оставь пустой! Максимум, кинь туда те вещи, которые я тебе выше описал. 


А до меня пока не дошло...
А какую роль тогда будет выполнять главная форма, если на ней ничего не располагать?
Давайте по порядку. При запуске приложения первой открывается главная форма и... как дальше? Сделать ее невидимой? Запускать дочернюю Form2, которая будет выполнять роль "главной", и уже с нее остальные дочерние формы, столько сколько мне будет нужно?

Сегодня пробовал Delphi 8, там та же фигня, но 8-ая ресурсов компьютера ест не мало. Сейчас восстанавливаю 7-ую версию.
--------------------
Судя по всему, у меня огромное количество мозгов - мне требуется уйма времени, чтобы ими пораскинуть
PM MAIL ICQ   Вверх
Vladimir_K
Дата 15.12.2006, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 2.12.2006

Репутация: нет
Всего: 1



Еще. У меня на гл. форме есть и MainMenu и ToolBar... больше пока ничего не добавлял. Есть и кнопка, которая открывает дочерние окна. Окна только оказываются расположенными за элементами гл. формы!  smile  Вопрос в том, как сделать, чтобы дочернее окно открывалось поверх главного! 
Неужели с таким эффектом никто никогда не сталкивался? Не может этого быть!   smile 
--------------------
Судя по всему, у меня огромное количество мозгов - мне требуется уйма времени, чтобы ими пораскинуть
PM MAIL ICQ   Вверх
Guedda
Дата 16.12.2006, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 6
Всего: 78



Отвечаю на все твои вопросы сразу!
Главная форма служит контейнером для дочерних форм! Никак дочернюю форму нельзя поместить поверх главной! Выход следующий:
Делаешь на главной форме ToolBar и mainMenu. На ToolBar Делаешь ToolButton, который будет открывать Tform2. А если необходимо сделать на главной форме ещё и Edit, и прочие контроллы, то лучше создать ещё дочернюю форму TForm3, и туда добавить все контроллы. 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Vladimir_K
Дата 16.12.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 2.12.2006

Репутация: нет
Всего: 1



Сделал так. С главной формы убрал все кроме ToolBar и mainMenu. Добавил дочернюю Form3, которая запускается сразу после главной, и макимизируется. На ней разместил дублирующую кнопку вызова дочернего окна Form2 (Form2 можно также открывать с ToolBar). Form2 имеет свойство WindowState = wsNormal. Но при открытии этого окна оно сразу же максимизируется (как до этого Form3). Да еще если передвинуть дочернее окно за пределы главного - появляются полосы прокрутки на главной форме.
Вобщем все это не то!
Меня больше устраивает если дочернее окно Form2 имеет свойство FormStyle = fsNormal. Но есть несколько "но": 
1. если несколько раз открываю Form2, то отображается только одно окно, и чтобы добраться до остальных, надо уменьшить размер главной формы.
2. если Form2 свернуть, оно исчезает с главной формы, и приходится восстанавливать главную форму (уменьшать ее), чтобы увидеть, где это там спряталось свернутое окошко. Можно ли сделать, чтобы Form2 при сворачивании отображалась на главной форме?
3. как располагать дочерние окна каскадом и т.д. если спец. кнопки для этого не действуют?
--------------------
Судя по всему, у меня огромное количество мозгов - мне требуется уйма времени, чтобы ими пораскинуть
PM MAIL ICQ   Вверх
Vladimir_K
Дата 16.12.2006, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 2.12.2006

Репутация: нет
Всего: 1



Первые два вопроса решил задав главной форме свойство FormStyle = fsNormal, а дочерним: fsStayOnTop. Теперь все отображается, ничего не просвечивает, свернутые дочерние окна доступны, полос прокрутки нет!
А как быть с вопросом №3 = как располагать дочерние окна каскадом и т.д. если спец. кнопки для этого не действуют?
--------------------
Судя по всему, у меня огромное количество мозгов - мне требуется уйма времени, чтобы ими пораскинуть
PM MAIL ICQ   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.2643 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.