Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.03.13;
Скачать: [xml.tar.bz2];

Вниз

Как определить, а затем изменить размеры рабочего стола?   Найти похожие ветки 

 
Новый   (2003-01-15 20:45) [0]

Все


 
Набережных С.   (2003-01-15 22:40) [1]

Forms.TScreen.GetWidth etc.


 
Anatoly Podgoretsky   (2003-01-15 23:02) [2]

Только в первом приближении, десктоп это немного шире, чем экран


 
Набережных С.   (2003-01-16 17:03) [3]

>Anatoly Podgoretsky © (15.01.03 23:02)

Каюсь, виноват, испралюсь:) Но Вы все-таки буквоед:)

>Новый (15.01.03 20:45)

Рабочий стол - Desktop - невизуальный объект и у него нет линейных размеров. А для поверхности логического дисплея:) смотри исходники, указанные выше.


 
Новый   (2003-01-16 20:10) [4]

2 Anatoly Podgoretsky © (15.01.03 23:02)
Но мне именно нужны размеры десктопа, а не разрешение экрана. Вы это верно подметили.
2 Набережных С. (16.01.03 17:03)
<смотри исходники, указанные выше>
Если не трудно, подскажите какие? Я к сожалению в <в смотри выше> не нашел этих <исходников>


 
S.P.I.R.I.T   (2003-01-16 20:53) [5]

Можно сделать так загоняешь в поиск TAPPBar т.е все тескбары смотришь где они находятся их ширины и вычитаешь из разрешения экрана.


 
Igit   (2003-01-16 20:58) [6]

вот размеры на API

var h:hwnd;
Rect: TRect;

=========
h:=GetDesktopWindow; //хэндл десктопа
GetClientRect(h, Rect);

теперь смотри Rect.top, Rect.left, Rect.righ, Rect.bottom...

изменить размеры позволяет функция... посмотри в справочнике по WinAPI (он в кладовке)


 
Новый   (2003-01-16 21:16) [7]

10x to ALL
Попробую


 
Набережных С.   (2003-01-16 21:22) [8]

Новый (16.01.03 20:10)
Чего-то я, видно, не понимая, видать не мой день. Открываешь модуль Forms и смотришь в классе TScreen реализацию методов GetDesktopRect, GetWorkAreaRect, GetWidth и т.д. Или что?


 
Новый   (2003-01-16 21:28) [9]

Прочитал внимательно свой вопрос, заметил, что сформулировал не достаточно четко. Возможно, после "перефразировки" он станет более прозрачным. Как определить размеры рабочего стола после изменения разрешения экрана (в пикселях), а затем изменить размеры в соответствии с новым разрешением?


 
Набережных С.   (2003-01-16 22:00) [10]

Нет, что-то я конкретно затупил. Извини, но я все равно не понял. Может, попробуешь на пальцах объяснить? Или, может, кто-то въехал, дак ответит или хотя-бы растолкует. А если ты имеешь в виду физический размер растра на экране, то тут я пас. Возможно, современные мониторы это обеспечивают, но я этим никогда не интересовался.


 
Anatoly Podgoretsky   (2003-01-16 22:19) [11]

Расшифруем немного "десктоп это немного шире"
Десктоп может быть больше или меньше чем экран, может размещаться более чем на одном экрана, может вообще быть виртуальным.
Это очень широкое понятие.

Набережных С. (16.01.03 21:22) подсказал хорошие решения, даже если Борланд и не совсем четко работает с понятием Десктоп.
Кроме того Igit © (16.01.03 20:58) также указал базовые решения.

В WinApi есть куча тем посвященных десктопам, но конечно там описано скромно, ща более подробной информацией надо лезть в MSDN


 
Набережных С.   (2003-01-16 23:40) [12]

Вот цитата из MSDN(перевод мой, так что не обессудьте:)):

"Десктоп - защищенный объект, входящий в состав оконной станции. Десктоп имеет поверхность логического дисплея и включает в себя окна, меню и хуки. Оконная станция может содержать несколько десктопов. Единовременно только один десктоп в интерактивной станции может быть видимым и принимать ввод пользователя."

Ну и так далее, в том же духе. Я как-то привык воспринимать десктоп как элемент системы безопасности и мне это представляется правильным.


 
Игорь Шевченко   (2003-01-17 10:07) [13]

Набережных С. (16.01.03 23:40)

GetDeviceCaps

DESKTOPHORZRES Windows NT only: Width, in pixels, of the virtual desktop. This value may be larger than HORZRES if the device supports a virtual desktop or multiple displays.

DESKTOPVERTRES Windows NT only: Height, in pixels, of the virtual desktop. This value may be larger than VERTRES if the device supports a virtual desktop or multiple displays.

Имеется в виду вовсе не объект win32 Desktop :-))

С уважением,


 
Карелин Артем   (2003-01-17 10:13) [14]

Cool - компоненты позволяют это делать


 
Anatoly Podgoretsky   (2003-01-17 10:25) [15]

Игорь Шевченко © (17.01.03 10:07)
Вот на это я и намекал, говоря что это понятие шире, и это к тому же не считая замечания Набережных, которое еще шире.


 
Scorcherman   (2003-01-17 15:03) [16]

Определить размеры рабчего стола можно рулеткой или линейкой, изменить размеры можно пилой. Способ универсален тем, что подходит и для обеденного стола!


 
Новый   (2003-01-17 15:19) [17]

Может кто попробует перевести дисплей из 1024х768 в 800х600 (программно), посмотрит что призойдет с рабочим столом, найдет конкретное решение и подбросит код?


 
Игорь Шевченко   (2003-01-17 15:43) [18]

Новый (17.01.03 15:19)

Решение чего ?


 
Новый   (2003-01-17 16:24) [19]

Не обязательно из 1024х768 в 800х600, можно и из 800х600 в 640х...
Хочется увидеть панель быстрого запуска (Win95-98, WinME, кроме WinXP - там это решается автоматом)


 
Новый   (2003-01-18 09:04) [20]

Ув. МАСТАКИ, для большей наглядности лучше перейти из 800х600 в 1024х768, получить панель быстрого запуска в "центре" рабочего стола и задуматься как ее поместить на место.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.03.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.009 c
3-39167
NDeu
2003-02-20 15:51
2003.03.13
Перекачка даных с одной базе на другой в рантайм


7-39594
Зина
2003-01-16 13:39
2003.03.13
изменить порядок обработки событий.


4-39639
Max2002
2003-01-22 13:19
2003.03.13
Огромное человеческое спаибо msts !!!


4-39641
AlexG
2003-01-21 07:13
2003.03.13
В WinApi приложении выходит такая ошибка не могу понять почему


8-39425
Noname_
2002-12-03 10:20
2003.03.13
Глюки в DirectShow





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский