Широчина екран
8 отговора
0 прегледа
Широчина екран
направих си форма: Form1
Screen.Width е 1024 (1024/768 ми е настройката в момента)
максимизирам си формата и Form1.Width става 1032.
Отде неговата.... си намери още 8 пикселчета?!?! От пластмасата ли?
Благораря предварително за идеи и подсказки... И ако тва се слага от бозата, зали на друг комп няма да се 10 или 12 пиксела в повече? Как аджеба да отгатна де са написани (явно 2 по 4 - за двете страни на дисплея).. То е ясно че има артък , ама...
Screen.Width е 1024 (1024/768 ми е настройката в момента)
максимизирам си формата и Form1.Width става 1032.
Отде неговата.... си намери още 8 пикселчета?!?! От пластмасата ли?
Благораря предварително за идеи и подсказки... И ако тва се слага от бозата, зали на друг комп няма да се 10 или 12 пиксела в повече? Как аджеба да отгатна де са написани (явно 2 по 4 - за двете страни на дисплея).. То е ясно че има артък , ама...
Re: Широчина екран
С коя версия на Delphi си? Пуснати ли са ти темите на Windows? Сложил ли си си XP Manifest в проекта? По време на стартиране на програмата ли максимизираш прозореца или проблема става, когато потребителя го максимизира по време на работа?
Linux isn't free, it's worthless.
Linux isn't free, it's worthless.
Re: Широчина екран
Нормално, всички джамци са така. Размерът на рамката се връща от GetSystemMetrics с параметър SM_CXBORDER. Явно си на win7/vista, щото на XP бяха 2 пиксела.
[линк]
[линк]
Re: Широчина екран
XP+Sp3, Делфи 7. Проблемът е когато се натисне бутонът за максимизиране. Опитах се да го "заобиколя" с :
if form1.Width > screen.Width then form1.Width:=screen.Width;
но form1.Width продължава да е 1032 а screen.Width 1024. Трасирам. Все тая. Този код го мушвам в OnResize
if form1.Width > screen.Width then form1.Width:=screen.Width;
но form1.Width продължава да е 1032 а screen.Width 1024. Трасирам. Все тая. Този код го мушвам в OnResize
Re: Широчина екран
А как точно ти пречи факта, че размера не е точно 1024?
Да не би да крашва програмата? Или некои контроли излизат разместени или не разположени където трябва?
Да не би да крашва програмата? Или некои контроли излизат разместени или не разположени където трябва?
Re: Широчина екран
Ами утре може и на половин екран да излиза всичко (знам ли?). просто искам да знам това от де иде?
1.От мен?
2.Делфито?
3.Бозата?
4.Компа (респ. монитора)?
Сорка! Просто начин на мислене , който ме е предпазвал от изненади през вековете!
1.От мен?
2.Делфито?
3.Бозата?
4.Компа (респ. монитора)?
Сорка! Просто начин на мислене , който ме е предпазвал от изненади през вековете!
Рамката
Ами той wqw ти го каза - това е нормалното поведение. Обърни внимание на дебелината на рамката на прозореца ти, когато той не е максимизиран. Тя е наистина дебела, особено на Vista и 7. Когато максимизираш прозореца, Windows го прави малко по-голям от екрана, за да изкара рамката извън него. Погледни, когато е максимизиран и ще видиш (т.е. няма да видиш) рамката. Но в този момент провери не Width, а ClientWidth на прозореца ти ще е колкото е разделителната способност. Идеята е, че когато максимизираш един прозорец, то значи той те интересува. В този случай рамката се маха, за да се максимизира полезното пространство.
Linux isn't free, it's worthless.
Linux isn't free, it's worthless.
Re: Рамката
Аааа...Тва за Width и ClientWidth въобще не беше ми минало през ума! Благодаря ти много за идеята.
Темата може да се заключи от модератора вече.
Темата може да се заключи от модератора вече.