TBitBtn в стиле XP

arafikov
Дата: 02.06.2009 11:51:16
Я использую Delphi 6. В программу я внедрил XPStyle.Res с манифестом,
поэтому в программе все отображается в стиле XP. У меня возникла проблема:
обычные кнопки TButton отображаются в стиле XP, а TBitBtn и TSpeedButton
отображаются "квадратными", не в стиле XP.

Я создал потомка TBitBtn:

unit AdvBitBtn;

interface

uses
  Windows, Messages, SysUtils, Classes, Controls, StdCtrls, Buttons,
  Graphics;

type
  TAdvBitBtn = class(TBitBtn)
  private
    { Private declarations }
  protected
    { Protected declarations }
  public
    { Public declarations }
  published
    { Published declarations }
    property Align;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('AdvButtons', [TAdvBitBtn]);
end;

{ TAdvBitBtn }

end.

Как сделать, чтобы он отображался в стиле XP? Я так понимаю, что надо перекрыть метод
Paint. Я смотрел модуль buttons.pas, но разобраться не смог.
Может быть, кто-нибудь это делал?

Заранее спасибо!
Джибс
Дата: 02.06.2009 11:58:32
Найти на вкладке Win32 компонент XPManifest
и бросить на форму.
arafikov
Дата: 02.06.2009 12:03:44
В Delphi 6 XPManifest нет, но я манифест подключаю в качестве ресурсного файла.
Проблема в том, что в Delphi 6 TBitBtn прорисовывается без учета темы XP.
И нужно менять прорисовку на уровне компонента. Думаю, что это проблема
в Delphi 6, в Delphi 7, возможно, с этим все в порядке.
arafikov
Дата: 02.06.2009 12:19:22
TButton отображается в стиле XP, а TBitBtn и TSpeedButton нет.
Может, кто работает в Delphi 6, у кого TBitBtn отображается в стиле XP - пошлите мне
системный файл buttons.pas.
zirra
Дата: 02.06.2009 12:54:23

On Tue, 02 Jun 2009 13:19:22 +0400, arafikov <nospam@sql.ru> wrote:

> Автор: arafikov
> TButton отображается в стиле XP, а TBitBtn и TSpeedButton нет.

http://www.soft-gems.net/index.php?option=com_content&task=view&id=17&Itemid=33

Posted via ActualForum NNTP Server 1.4

arafikov
Дата: 02.06.2009 12:58:00
Zirra, спасибо! Попробую!
zirra
Дата: 02.06.2009 13:09:00

On Tue, 02 Jun 2009 13:58:00 +0400, arafikov <nospam@sql.ru> wrote:

> Автор: arafikov
> Zirra, спасибо! Попробую!

А что тут пробовать-то?..
Устанавливай и пользуй!..
Картинка с другого сайта.

Posted via ActualForum NNTP Server 1.4

arafikov
Дата: 02.06.2009 13:14:21
Установил, все заработало! BitBtn теперь в стиле XP. Вопрос закрыт.