Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2017.01.15;
Скачать: CL | DM;

Вниз

Почему на некоторых контролах   Найти похожие ветки 

 
dmk ©   (2015-03-10 11:17) [0]

рамка с координатами (0,0)-(W,H) рисуется со смещением?
Посмотреть можно здесь: http://s4.postimg.org/q2lk2a7fh/tab01.jpg
Как избежать этого?


 
DVM ©   (2015-03-10 11:39) [1]


> Как избежать этого?

(0,0)-(W-1,H-1) ?


 
MBo ©   (2015-03-10 11:42) [2]

Какое именно смещение имеется в виду?


 
Германн ©   (2015-03-10 13:34) [3]

Наверно потому, что у этих некоторых уже есть своя рамка.


 
dmk ©   (2015-03-10 14:54) [4]

>Какое именно смещение имеется в виду?
Рамка уезжает вовнутрь.

Код такой:
GetWindowRect(FCurrentControl, R);
DR.Left := 0;
DR.Top := 0;
DR.Width := R.Right - R.Left;
DR.Height := R.Bottom - R.Top;
canvas.Rectangle(DR);


Германн ©   (10.03.15 13:34) [3]
Как ее убрать?


 
dmk ©   (2015-03-10 14:55) [5]

И как отличить такие контролы? Ведь на кнопках и других раки рисуются четко по границе.


 
Rouse_ ©   (2015-03-10 15:04) [6]

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


 
DVM ©   (2015-03-10 15:20) [7]


> dmk ©   (10.03.15 14:55) [5]
> И как отличить такие контролы? Ведь на кнопках и других
> раки рисуются четко по границе.

Чего ты хочешь добиться? Нарисовать рамку вокруг произвольного контрола? Или внутри него? На картинке у тебя по-разному.


 
dmk ©   (2015-03-10 17:38) [8]

>Нарисовать рамку вокруг произвольного контрола?
В общем да. Если бы еще можно было бы, то и вокруг TControl, а не только TWinControl.


 
dmk ©   (2015-03-11 12:00) [9]

Разобрался. Нужно было GetWindowDC вместо GetDC использовать. Тогда все норм.



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

Текущий архив: 2017.01.15;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.036 c
2-1424793636
TYMON
2015-02-24 19:00
2017.01.15
Intraweb Подключение к базе через ADO


4-1278447363
mahab
2010-07-07 00:16
2017.01.15
Асинхронная запись


15-1453983731
K-1000
2016-01-28 15:22
2017.01.15
Тернарный оператор в Delphi


2-1422093481
Некто
2015-01-24 12:58
2017.01.15
Почему выводится неправильное число (указатели)?


2-1424590192
aka
2015-02-22 10:29
2017.01.15
текстовый редактор с нуля





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский