![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Unconnected |
![]()
Сообщение
#1
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Привет всем.
Открываю процесс через CreateProcess, и надобно мне, чтобы окно его создавалось не где придётся, а там, где мне надо. В структуре типа TStartUpInfo полям dwX и dwY присваиваю некоторые значения. Но бестолку, блокнот, например, где был при прошлом ручном запуске, там и остался, при программном. Procedure createpad; И ещё вопрос, на эти поля, dwX и dwY (ну может не на эти, а на те, которые отвечают за координаты создания окна) наложены какие-либо ограничения? Например, эти координаты могут быть отрицательными (типа пол-окна за границей экрана)? Та же история с размерами. Меняю dwXSize и dwYSize. PS: разрешение экрана 1024-768. Добавлено через 12 мин. Цитата StInfo.wShowWindow:=SW_SHOWDEFAULT; Мб из-за этого DEFAULT? Сообщение отредактировано: Unconnected - 21.06.2010 17:32 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Во-первых:
MSDN->STARTUPINFO Structure Цитата dwX У тебя флага STARTF_USEPOSITION нет, насколько я вижу. If dwFlags specifies STARTF_USEPOSITION, this member is the x offset of the upper left corner of a window if a new window is created, in pixels. Otherwise, this member is ignored. Ну, и во-вторых (оттуда же): Цитата The offset is from the upper left corner of the screen. For GUI processes, the specified position is used the first time the new process calls CreateWindow to create an overlapped window if the x parameter of CreateWindow is CW_USEDEFAULT. Ты уверен, что окно Notepad-а создается с CW_USEDEFAULT, чтоб у тебя было право его менять? Я - нет... |
![]() ![]() |
![]() |
Текстовая версия | 4.07.2025 4:39 |