Тема: {mdm}Zinc
Показать сообщение отдельно
Старый 06.07.2007, 11:48
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 114  
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
По умолчанию запуск скринсейвера

небольшая фича, которая позволяет запустить программно скринсэйвер, установленный в системе по умолчанию
Код:
go.label = "screensaver";
mdm.Application.doEvents();
formTitle = mdm.Forms.MainForm.title = "form";
appTitle = mdm.Application.title = "app";
var wList = mdm.System.getWindowList();
var i = 0;
while (wList[i][1]) {
	if (wList[i][0] == formTitle || wList[i][0] == appTitle) {
		hwnd = wList[i][1];
	}
	i++;
}
go.onRelease = function() {
	mdm.System.postMessage(hwnd, 0x0112, 0xF140, 0);
	};
go - это кнопка, title у формы устанавливается программно, чтобы получить хэндл окна приложения через getWindowsList, но можно устанвить титле и вручную. Важно только чтоб фактический титле совпал со строкой сравнения в цикле while.
Далее окно само себе шлет системное сообщение на запуск скринсейвера.


Последний раз редактировалось alexcon314; 17.08.2007 в 17:24.