2011-07-24 6 views

答えて

3

私は最近、リボンと同じ問題を抱えていましたが、答えが見つかりました。dxSkinsdxRibbonPainterユニークで楽しいユニットを含める必要があります。

私はずっと前から、エンバカデロとパートナーが自社の製品についての情報が不足していることを指摘しています。なぜなら、デルファイは悲しいかなか市場シェアを持っていません。例:PHPやRubbyと比較して、Delphi、RADPHP、またはPrismaについていくつの本を見つけましたか?

1

まず、dxSkinsdxBarPainterがuses句に含まれていることを確認します。しかしおそらく最も重要なのは、適切なスキンユニットがuses節にあることを確認することです。この場合はdxSkinSevenです。次に、ColorSchemeNameプロパティを設定します。私が見る限り、セブンはとにかくブルーのライトバージョンです - 実際には変更されていないと確信していますか?

編集: OK - サンプル:

が新しいVCLフォームプロジェクトを作成します。 form1のコードで次のように置き換えます。

unit Unit1; 

interface 

uses 
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
    Dialogs, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters, 
    dxSkinsCore, dxSkinBlue, dxSkinCaramel, dxSkinDarkRoom, dxSkinFoggy, 
    dxSkiniMaginary, dxSkinLilian, dxSkinOffice2007Black, dxSkinOffice2007Blue, 
    dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, 
    dxSkinOffice2010Black, dxSkinOffice2010Blue, dxSkinOffice2010Silver, 
    dxSkinSeven, dxSkinSharp, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, 
    dxSkinXmas2008Blue, dxSkinsdxRibbonPainter, dxStatusBar, dxRibbonStatusBar, 
    cxClasses, dxRibbon, dxSkinsdxBarPainter, dxBar; 

type 
    TForm1 = class(TForm) 
    private 
    ribbon1: TdxRibbon; 
    tab1: TdxRibbonTab; 

    barManager1: TdxBarManager; 
    bar1: TdxBar; 
    btn1: TdxBarButton; 
    btn2: TdxBarButton; 
    btn3: TdxBarButton; 

    procedure SetupBarManager; 
    procedure SetupRibbon; 
    procedure dxBarButtonClick(Sender: TObject); 
    protected 
    procedure Loaded; override; 
    public 
    { Public declarations } 
    end; 

var 
    Form1: TForm1; 

implementation 

{$R *.dfm} 

procedure TForm1.Loaded; 
begin 
    inherited; 

    SetupBarManager; 
    SetupRibbon; 
end; 

procedure TForm1.SetupBarManager; 
begin 
    barManager1 := TdxBarManager.Create(Self); 
    btn1 := TdxBarButton.Create(Self); 
    btn2 := TdxBarButton.Create(Self); 
    btn3 := TdxBarButton.Create(Self); 

    with barManager1 do 
    begin 
    Name := 'barManager1'; 
    Categories.Clear; 
    Categories.Add('Default'); 
    end; 

    bar1 := barManager1.Bars.Add; 
    with bar1 do begin 
    Name := 'bar1'; 
    Visible := True; 
    with ItemLinks.Add do 
    begin 
     Visible := True; 
     Item := btn1; 
    end; 
    with ItemLinks.Add do 
    begin 
     Visible := True; 
     Item := btn2; 
    end; 
    with ItemLinks.Add do begin 
     Visible := True; 
     Item := btn3; 
    end; 
    end; 

    with btn1 do begin 
    Name := 'btn1'; 
    Caption := 'Seven'; 
    Category := 0; 
    Visible := ivAlways; 
    OnClick := dxBarButtonClick; 
    end; 
    with btn2 do begin 
    Name := 'btn2'; 
    Caption := 'Springtime'; 
    Category := 0; 
    Visible := ivAlways; 
    OnClick := dxBarButtonClick; 
    end; 
    with btn3 do begin 
    Name := 'btn3'; 
    Caption := 'Blue'; 
    Category := 0; 
    Visible := ivAlways; 
    OnClick := dxBarButtonClick; 
    end; 
end; 

procedure TForm1.SetupRibbon; 
begin 
    ribbon1 := TdxRibbon.Create(Self); 

    with ribbon1 do begin 
    Name := 'ribbon'; 
    Parent := Self; 
    Left := 0; 
    Top := 0; 
    Height := 150; 
    BarManager := barManager1; 
    ColorSchemeName := 'Lilian'; 
    TabOrder := 0; 
    TabStop := False; 
    end; 

    tab1 := ribbon1.Tabs.Add; 
    with tab1 do begin 
    Name := 'tab1'; 
    Ribbon := ribbon1; 
    Visible := true; 
    end; 
    tab1.AddToolBar(bar1); 
end; 

procedure TForm1.dxBarButtonClick(Sender: TObject); 
begin 
    if (Sender is TdxBarButton) then 
    ribbon1.ColorSchemeName := TdxBarButton(Sender).Caption; 
end; 

end. 

私のために働きます。

+0

'dxSkinsdxBarPainter'と' dxSkinSeven'は 'uses'セクションにあります。リボンスタイルはまだ '青'(デフォルト)です。サンプルプロジェクトを私に送ってもらえますか? – Kermia

+0

サンプルには、インストールに付属のリボンデモ、具体的にはRibbonNotepadDemoをご覧ください。 RibbonNotepadDemoMain.pas約990行。スキン名を適宜変更してください。それは私のために働いた。パッケージを使用していますか?必要なスキンをパッケージリストにすべて含めていない可能性がありますか? – shunty

+0

はい、必要なスキンをすべて含めました。 – Kermia

関連する問題