Главная страница
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.027 c
1-1117784861
312Kbps
2005-06-03 11:47
2005.06.29
Работа с файлом txt !!!


3-1116579304
mr.IL
2005-05-20 12:55
2005.06.29
возвратить значение из ADOCommand


3-1113979898
pavel_guzhanov
2005-04-20 10:51
2005.06.29
SQLQuery и MySQL


1-1117604664
vidiv
2005-06-01 09:44
2005.06.29
русские надписи на кнопках в диалогах msgdialog.


4-1114998618
n0name
2005-05-02 05:50
2005.06.29
Зачем нужен линковщик?