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

Вниз

Проблема с окнами   Найти похожие ветки 

 
Misha aka Programmer   (2005-05-03 18:39) [0]

Я занимаюсь программирование текстового редактора типа Microsoft Word. В данном приложении есть функция работы с несколькими окнами (каждый новый документ открывается в новом окне программы). Как это можно реализовать (без MDI)? Думал сделать через ShellExecute(Handle, "open", ‘word.exe", nil, nil, SW_SHOWNORMAL) и столкнулся с двумя проблемами:
1. У меня перед запуском программы идет заставка, которую не следует запускать после запуска первой версии программы.
2. Как обратиться к запущенным программам, например при создании поменять заголовок (типа Программа 1, Программа 2 и т.д.) или из одной запушенной программы обратиться к другой (например, упорядочить их.
Читал в своих книжках - ничего не нашёл (надо срочно выбросить) да и в help вроде нет!!! Может подскажите?


 
Cobalt ©   (2005-05-03 19:25) [1]

Попробуй вынести общий код в COM-сервер, и он уже будет тебе сообщать, есть уже запущенные, или нет, вести учёт количества окон и их заголовков и т.п.


 
GLFox ©   (2005-05-03 19:34) [2]

Можно создавать/проверять mutex при запуске.
Если он есть, то делаем FindWindow, например.
А потом соответсвенно SendMessage...


 
_1   (2005-05-03 19:38) [3]

Я бы делал без запуска несколький копий, также как и в MDI - для одного документа - одно окно в пределах одного процесса (только не MDI).
Чтобы для формы появилась кнопка на панели задач - в CreateParams написать: Params.ExStyle:= Params.ExStyle or WS_EX_APPWINDOW.
Как недопустить повторного запуска, и передать в запущеное приложение имя файла (параметр с которым запустили программу) - в соседней ветке: http://delphimaster.net/view/1-1115128954/
Менять заголовки окон - Form.Caption.



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
9-1111518164
Bret
2005-03-22 22:02
2005.06.29
Вид от первого лица в GLscene


9-1107804770
Micke
2005-02-07 22:32
2005.06.29
2D движок. Третья демка. Очередная :)


4-1115567827
alex_samus
2005-05-08 19:57
2005.06.29
Параметры программы


6-1111941256
Vitaly Gavrilov
2005-03-27 20:34
2005.06.29
О учете времени в интернет


1-1117867566
seregka
2005-06-04 10:46
2005.06.29
как очистить буфер обмена