Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Работа с параметрами экрана

41K
01 сентября 2008 года
wWo_
5 / / 18.08.2008
Здраствуйте, вобщем я буду краток.:)

Код:
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) - к примеру это кнопка выход.
Пробовал применить их в другом обработчике не получается, а новые переменные получают данные экрана теже что и программа ставит сама.
490
01 сентября 2008 года
frid-karatel
357 / / 15.09.2007
Цитата: wWo_
Неполучается запустить ранее полученные данные типа int в другом обработчике событий.



А кто мешает использовать не локальные переменные, а глобальные? :confused:
И вообще, вопрос очень уж сложный, его надо задавать здесь.

14
01 сентября 2008 года
Phodopus
3.3K / / 19.06.2008
Хранить в полях класса формы.
41K
03 сентября 2008 года
wWo_
5 / / 18.08.2008
Есть есче один вопрос! КАК отключить пуск. либо скрыть, но так,
чтобы при нажатии на кнопку Win оно не появлялось. Либо может кто подскажет как найти хендл пуска.

RE:извеняйте, сам пробовал несмог.
288
03 сентября 2008 года
nikitozz
1.2K / / 09.03.2007
Цитата: wWo_

Либо может кто подскажет как найти хендл пуска.



 
Код:
HWND  hTaskBar, hButton;            
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);
41K
03 сентября 2008 года
wWo_
5 / / 18.08.2008
Цитата: nikitozz
 
Код:
HWND  hTaskBar, hButton;            
hTaskBar= FindWindow("Shell_TrayWnd",NULL);
hButton= GetWindow(hTaskBar, GW_CHILD);



Нет. Это не то вы мне подсказали только для таскбара и кнопки пуск, но
пуск все равно открывается при нажатии любой из кнопок Win на клавиатуре. Мне нужно чтобы при нажатии на кнопку Win на клавиатуре
Пуск НЕ открывался. Как это сделать немогу додуматься. А Хэндл Таскбара и кнопки пуск, я знаю, а вот самого меню нет.

288
03 сентября 2008 года
nikitozz
1.2K / / 09.03.2007
Тогда, как вариант, копайте в сторону SetWindowsHookEx и WH_KEYBOARD.
41K
04 сентября 2008 года
wWo_
5 / / 18.08.2008
Цитата: nikitozz
Тогда, как вариант, копайте в сторону SetWindowsHookEx и WH_KEYBOARD.



Нет это долго.

Вот смотри:

 
Код:
HWND H;
H=FindWindow("Shell_TrayWnd",NULL); //находим хандл окна таскбара
ShowWindow(H, SW_HIDE);//делаем его невидимым


Вот этот код делает тасбар невидимым. Может будет проще сделать меню пуск тоже нивидимым. Но я незнаю как найти хандл меню тасктаскбара.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог