Einzelnen Beitrag anzeigen

Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#1

Toolbutton grau machen + disable !!!

  Alt 3. Jan 2011, 14:38
Hallo zusammen, ich verwende eine Toolbar + PNGImageList.
Ich möchte erreichen, dass meine Buttons grau gefärbt werden und dass diese "disabled" sind.
Nur bekomm ich es nicht hin, entweder ich kann sie disablen und sie sind total grau oder ich kann sie grau färben aber sind dennoch anklickbar...

Im Anhang befindet sich ne kleine Demoanwendung, vll versteht ihr dann besser was ich meine..

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, PngImageList, ImgList, ComCtrls, ToolWin, StdCtrls, ExtCtrls;

type
  TPNG = class(TForm)
    ToolBar1: TToolBar;
    tbtnAngel: TToolButton;
    PngImageList1: TPngImageList;
    tbtnRight: TToolButton;
    tbtnPlus: TToolButton;
    tbtnX: TToolButton;
    btnGrey: TButton;
    btnAlleEnable: TButton;
    Panel1: TPanel;
    procedure FormResize(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnAlleEnableClick(Sender: TObject);
    procedure btnGreyClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  PNG: TPNG;

implementation

{$R *.dfm}

procedure TPNG.FormResize(Sender: TObject);
begin
  Toolbar1.ShowCaptions := False;
  Application.ProcessMessages;
  Toolbar1.ShowCaptions := True;
end;

procedure TPNG.FormShow(Sender: TObject);
begin
  tbtnAngel.Enabled := True;
  tbtnRight.Enabled := True;
  tbtnPlus.Enabled := True;
  tbtnX.Enabled := True;
end;

procedure TPNG.btnAlleEnableClick(Sender: TObject);
begin
  if (tbtnAngel.Enabled = True) and (tbtnPlus.Enabled = True) and
     (tbtnX.Enabled = True) and (tbtnRight.Enabled = True) then
    begin
      tbtnAngel.Enabled := False;
      tbtnPlus.Enabled := False;
      tbtnX.Enabled := False;
      tbtnRight.Enabled := False;
      Toolbar1.ShowCaptions := False;
      Application.ProcessMessages;
      Toolbar1.ShowCaptions := True;
    end
  else
    begin
      tbtnAngel.Enabled := True;
      tbtnPlus.Enabled := True;
      tbtnX.Enabled := True;
      tbtnRight.Enabled := True;
      Toolbar1.ShowCaptions := False;
      Application.ProcessMessages;
      Toolbar1.ShowCaptions := True;
    end;
end;

procedure TPNG.btnGreyClick(Sender: TObject);
begin
  if PngImageList1.EnabledImages = True then
    begin
      PngImageList1.EnabledImages := False;
      Toolbar1.ShowCaptions := False;
      Application.ProcessMessages;
      Toolbar1.ShowCaptions := True;
    end
  else
    begin
      PngImageList1.EnabledImages := True;
      Toolbar1.ShowCaptions := False;
      Application.ProcessMessages;
      Toolbar1.ShowCaptions := True;
    end;
end;

end.
Angehängte Dateien
Dateityp: zip Project1.zip (265,1 KB, 7x aufgerufen)
  Mit Zitat antworten Zitat