int Horz = Screen->Width;
int Vert = Screen->Height;
Form1->Width=1024;
Form1->Height=768;
DEVMODE DM;
DM.dmSize = sizeof(DEVMODE);
DM.dmBitsPerPel = 16;
DM.dmPelsWidth = 1024;
DM.dmPelsHeight = 768;
DM.dmFields = DM_BITSPERPEL +
DM_PELSWIDTH +
DM_PELSHEIGHT +
DM_DISPLAYFREQUENCY;
DM.dmDisplayFrequency = 60;
ChangeDisplaySettings(&DM, 0);
Работа с параметрами экрана
Код:
Как вы видите этот код узнает параметры экрана, и запуская программу
открывает окно с тем же разрешением что и экран, получается работа в
полно экранном режиме. А что если у меня стоит разрешение к примеру 1280 на 960. То при выходе из программы разрешение останится таким же как его установила моя программа.
Проблема в следующем:
Неполучается запустить ранее полученные данные типа int в другом обработчике событий.
То есть при запуске программы параметры экрана заносятся в переменные Horz и Vert. А как мне их использовать в другом обработчике, например OnClick(button1) - к примеру это кнопка выход.
Пробовал применить их в другом обработчике не получается, а новые переменные получают данные экрана теже что и программа ставит сама.
Хранить в полях класса формы.
чтобы при нажатии на кнопку Win оно не появлялось. Либо может кто подскажет как найти хендл пуска.
RE:извеняйте, сам пробовал несмог.
Цитата: wWo_
Либо может кто подскажет как найти хендл пуска.
Код:
HWND hTaskBar, hButton;
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);
Цитата: nikitozz
Код:
HWND hTaskBar, hButton;
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);
Нет. Это не то вы мне подсказали только для таскбара и кнопки пуск, но
пуск все равно открывается при нажатии любой из кнопок Win на клавиатуре. Мне нужно чтобы при нажатии на кнопку Win на клавиатуре
Пуск НЕ открывался. Как это сделать немогу додуматься. А Хэндл Таскбара и кнопки пуск, я знаю, а вот самого меню нет.
Тогда, как вариант, копайте в сторону SetWindowsHookEx и WH_KEYBOARD.
Цитата: nikitozz
Тогда, как вариант, копайте в сторону SetWindowsHookEx и WH_KEYBOARD.
Нет это долго.
Вот смотри:
Код:
HWND H;
H=FindWindow("Shell_TrayWnd",NULL); //находим хандл окна таскбара
ShowWindow(H, SW_HIDE);//делаем его невидимым
H=FindWindow("Shell_TrayWnd",NULL); //находим хандл окна таскбара
ShowWindow(H, SW_HIDE);//делаем его невидимым
Вот этот код делает тасбар невидимым. Может будет проще сделать меню пуск тоже нивидимым. Но я незнаю как найти хандл меню тасктаскбара.