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

Вниз

Ошибка в TBitBtn при включенном GRAPHCTL_XPSTYLES   Найти похожие ветки 

 
Виктор007   (2007-10-21 00:05) [0]

У меня сдвигается текст с глифом в право на середину кнопки, подскажите как исправить?


 
Виктор007   (2007-10-21 12:17) [1]

Пока просто поправил под свои нужды visual_xp_styles.inc:
Заменил в WndButtonXPDraw

if Sender.fglyphLayout in [ glyphLeft ] then
   begin
    RIcon := MakeRect((SenderWidth div 2) - (W + (W div 4)),
                      (SenderHeight div 2) - (H div 2),
                       W, SenderHeight);
    RText.Left := (SenderWidth div 2) + (W div 4);

На это:

if Sender.fglyphLayout in [ glyphLeft ] then
   begin
    RIcon := MakeRect((SenderWidth div 2) - (W + (W div 4)),
                      (SenderHeight div 2) - (H div 2),
                       W, SenderHeight);
    RIcon.Left := 5;
    RText.Left := 24;


 
Виктор007   (2007-10-21 12:33) [2]

Еще подправил:
var
TWidth : integer;
...
if Sender.fglyphLayout in [ glyphLeft ] then
   begin
    // Получение ширины текста
    Sender.Canvas.Font.Assign ((Sender).Font);
    TWidth := Sender.Canvas.TextWidth((Sender).Caption);

    RIcon := MakeRect(((SenderWidth - TWidth) div 2) - W,
                      (SenderHeight div 2) - (H div 2),
                       W, SenderHeight);
    RText.Left := ((SenderWidth - TWidth) div 2) + (W div 4);
    HPos := DT_LEFT;
    VPos := DT_VCENTER;
   end;



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
15-1216025897
MMuxa
2008-07-14 12:58
2008.08.31
Virtual Treeview


15-1215634451
@!!ex
2008-07-10 00:14
2008.08.31
CALLBACk процедура как часть класса в С++


6-1191317704
Obsidee
2007-10-02 13:35
2008.08.31
TSocketServer без формы


6-1192783761
VaRela
2007-10-19 12:49
2008.08.31
Блокирующий TServerSocket


3-1204373826
harisma
2008-03-01 15:17
2008.08.31
Формирование запроса с условием TOP