Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.029 c
1-1118127516
Andy BitOff
2005-06-07 10:58
2005.06.29
Ошибка: "Cannot open file ..."


1-1117624739
towik
2005-06-01 15:18
2005.06.29
Как можно вывести тип Множество на форму?


1-1118091583
Karnak
2005-06-07 00:59
2005.06.29
Путь папки windows


9-1111320863
Toxic
2005-03-20 15:14
2005.06.29
Анализ поверхности


4-1115378145
shein
2005-05-06 15:15
2005.06.29
Как проверить имя польз-ля/пароль в домене WinNT?




   Наверх