Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
"Проект открыт в проекте" - как закрыть последний?
ИгорьДата: Понедельник, 05 Марта 2007, 09:14 | Сообщение # 1
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
Имеем проект, скомпилированный в ЕХЕ-файл. Он является как-бы проигрывателем остальных mmb-файлов, которые подгружаются туда при нажатии соответсвующих кнопок ЕХЕ-шника. Проблема: если они открываются в отдельном окне, то проблем с закрытием, естественно, нет. А вот если В ЭТОМ ЖЕ - при закрытии закрывается, естественно, и ЕХЕшник. Как сделать, чтобы закрывался только тот проект, кторый загрузился, а ЕХЕ не закрывался?

Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
toizyДата: Понедельник, 05 Марта 2007, 10:05 | Сообщение # 2
Группа: Удаленные





CBK_EXIT, а в нём загружать тот проект, который должен появиться после закрытия текущего.
 
ИгорьДата: Понедельник, 05 Марта 2007, 11:40 | Сообщение # 3
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
Э-э-э... не понял... т.е. кроме ЕХЕ должен еще быть такой же, но некомпилированный ММВ-проект, который и запускается при закрытии?...
Хм-м-м... а это мысль... Спасибо!


Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
as-masterДата: Суббота, 10 Марта 2007, 19:59 | Сообщение # 4
Группа: Удаленные





Quote (Игорь)
т.е. кроме ЕХЕ должен еще быть такой же, но некомпилированный ММВ-проект, который и запускается при закрытии?...

Так можно и откомпилированный запускать...

 
ИгорьДата: Понедельник, 19 Марта 2007, 09:17 | Сообщение # 5
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
Можно, только... как бы это сказать... Ну, например, имеются три страницы в "стартовом" проекте-ехе-шнике, и я перешел в mmb-файл скажем, со второй страницы. А откомпилированный-то работает с первой страницы. У меня заморочек там уйма, ты же видел :-)

Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
toizyДата: Понедельник, 19 Марта 2007, 11:53 | Сообщение # 6
Группа: Удаленные





Quote (Игорь)
ты же видел

Да, мы тут все телепаты.
Лично я ничего не видел, а потому не могу ничего посоветовать.
Лучше было бы, если бы ты выложил тут всё, что нам нужно увидеть.
А то ж все не в теме оказались...
 
as-masterДата: Понедельник, 19 Марта 2007, 12:37 | Сообщение # 7
Группа: Удаленные





Quote (Игорь)
ты же видел

Это относилось лично ко мне, а я действительно видел проект.

Теперь по теме. Если следовать точно теме, то там говорится:
"Проект открыт в проекте - как закрыть последний?"

А если попробовать просто как бы открыть к этом же окне
изначальный проект? То есть иметь его не только в ехе, но и в mbd-варианте.

 
toizyДата: Понедельник, 19 Марта 2007, 15:22 | Сообщение # 8
Группа: Удаленные





Quote (as-master)
А если попробовать просто как бы открыть к этом же окне
изначальный проект? То есть иметь его не только в ехе, но и в mbd-варианте.

Если так, то:
Quote (toizy)
CBK_EXIT, а в нём загружать тот проект, который должен появиться после закрытия текущего.
 
as-masterДата: Понедельник, 19 Марта 2007, 16:15 | Сообщение # 9
Группа: Удаленные





Насколько я понял, нужно сделать следующее.

Сначала запускается ОСНОВНОЙ проект, который у Игоря скомпилирован в ехе.
Во время работы возникает необходимость присоединения к проекту внешнего
mbd-файла, который открывается командой RunMBD() в родительском окне.
Затем возникает необходимость закрыть это окно и вернуться к стартовому окну.
Так?

1. Во-первых, почему-бы не открывать второе окно в новом окне,а основное
в это время автоматически сворачивать.

2. Во-вторых, командой CBK_EXIT что-то не очень-то получается запустить проект,
который открыт В НАСТОЯЩЕЕ ВРЕМЯ (фактически же он уже открыт!)

3. В-третьих, почему бы все-таки не попробовать сделать так, как я предлагаю:
вместо закрытия второго приложения, открытого в том же окне, снова дать команду
RunMBD() и запустить в том же окне стартовый проект, только уже тот его вариант,
который будет валяться на диске в mbd-формате.

 
toizyДата: Понедельник, 19 Марта 2007, 17:56 | Сообщение # 10
Группа: Удаленные





Quote (as-master)
командой CBK_EXIT что-то не очень-то получается запустить проект,
который открыт В НАСТОЯЩЕЕ ВРЕМЯ

Я не об этом. Я о том, чтобы после закрытия открытого нового mbd-файла в том же окне (не новом) вновь открывать прежний файл командой RunMBD, предварительно запомнив имя прежнего проекта в какой-нибудь переменной. Это даёт возможность открывать много самых разных проектов, лежащиж на диске в виде mbd-файлов. Кроме того, это даёт возможность строить целую историю открытий этих файлов, занося имена файлов в динамический массив. Хотя это возможно и в случае открытия проекта в новом окне, когда главный проект скрывается с глаз долой.
И, если честно, я не совсем понял, что ты имел в виду под
Quote (as-master)
командой CBK_EXIT что-то не очень-то получается запустить проект,
который открыт В НАСТОЯЩЕЕ ВРЕМЯ
 
as-masterДата: Понедельник, 19 Марта 2007, 19:34 | Сообщение # 11
Группа: Удаленные





Quote (toizy)
И, если честно, я не совсем понял, что ты имел в виду под Quote (as-master) командой CBK_EXIT что-то не очень-то получается запустить проект, который открыт В НАСТОЯЩЕЕ ВРЕМЯ

Скорее, это я не понял, что ты имел в виду, предлагая использовать CBK_EXIT.
В данном случае мы с тобой, похоже, предлагаем одно и то ж решение, то есть
открывать в том же окне проекты в виде mbd-файлов, вот и всё. А не закрывать окна.
Если у разных проектов разные размеры окон, то просто одновременно ресайзить окно.
А вот если у проектов окна индивидуальной, заказной формы, то фокус не пройдет.

И вообще, похоже, что мы обсуждаем тему, которая стала нужна только нам с тобой,
ибо автора что-то не видно с его комментариями предлагаемых здесь решений smile

Игорь, ау-у-у!!!

 
ИгорьДата: Пятница, 23 Марта 2007, 11:26 | Сообщение # 12
Педагог
Группа: Проверенные
Сообщений: 331
Репутация: 0
Награды: 0
Статус: Offline
Тут я, тут...
Извиняюсь, заморочек уйма, только что время выдалось в интернет-класс зайти...
На несколько раз перечитал, в общем as-master прав
Quote (as-master)
Сначала запускается ОСНОВНОЙ проект, который у Игоря скомпилирован в ехе.
Во время работы возникает необходимость присоединения к проекту внешнего
mbd-файла, который открывается командой RunMBD() в родительском окне.
Затем возникает необходимость закрыть это окно и вернуться к стартовому окну.
Так?

Да, именно так, а насчет
Quote (as-master)
1. Во-первых, почему-бы не открывать второе окно в новом окне,а основное
в это время автоматически сворачивать.
- я так и делал, но когда в проекте много всего, второе окно долго грузится, а без параметра NEW_WINDOWS, т.е. в том же окне, оно грузится в несколько раз быстрее. Причем я не могу уловить причину - иногда вроде и сам файл меньше, а грузится в новое окно долше, чем проект заведомо больший...
А про вариант

Quote (as-master)
3. В-третьих, почему бы все-таки не попробовать сделать так, как я предлагаю:
вместо закрытия второго приложения, открытого в том же окне, снова дать команду
RunMBD() и запустить в том же окне стартовый проект, только уже тот его вариант,
который будет валяться на диске в mbd-формате.

я тоже думал, только не реализовал - на другое отвлекли... а куда тогда денется предыдущий проект? память очистится или он так там, "на заднем плане" висеть будет? Попробую сделать.
а про
Quote (toizy)
Я о том, чтобы после закрытия открытого нового mbd-файла в том же окне (не новом) вновь открывать прежний файл командой RunMBD...
можно поподробнее? После трех пар лекций я чего-то туго соображаю...
Спасибо за ответы, очень надеюсь надолго не теряться и выставить простенькие проекты для более понятного объяснения своих проблем, пардон...


Шум ничего не доказывает. Курица, снесши яйцо, часто клохчет так, словно снесла небольшую планету...
Марк Твен
 
as-masterДата: Пятница, 23 Марта 2007, 12:08 | Сообщение # 13
Группа: Удаленные





Quote (Игорь)
а куда тогда денется предыдущий проект?
память очистится или он так там, "на заднем плане" висеть будет?

Вообще-то, как я понимаю, он уже закроется.
А что, попробовать и проверить всё на практике слабо? :)

 
  • Страница 1 из 1
  • 1
Поиск: