AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Toolbutton grau machen + disable !!!
Thema durchsuchen
Ansicht
Themen-Optionen

Toolbutton grau machen + disable !!!

Ein Thema von Metallicwar · begonnen am 3. Jan 2011 · letzter Beitrag vom 25. Jan 2011
Antwort Antwort
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

AW: Toolbutton grau machen + disable !!!

  Alt 3. Jan 2011, 14:34
ah, danke für die Antwort.
Also wenn ich von meinen Images die Eigenschaft pngGrayscaleOnDisabled auf True setze verändert sich garnichts.
Wenn ich allerdings wie oben geschrieben der Eigenschaft DisabledImages (der Toolbar) meine PNGImageList zuweisen, dann werden die Toolbuttons Disabled angezeigt und in Farbe, wenn es jetzte noch möglich wäre die Farbe abzuschwächen, dann wäre es perfekt

mfg David
Funktioniert doch wunderbar?! Du musst nur die passenden Eigenschaften in der PNGImageList setzen:
  • EnabledImages auf True, dann haben die Images die normale Farbe.
  • EnabledImages auf False und PngOptions.pngGrayScaleOnDisabled := False -> dann werden die Images abgeschwächt gezeichnet.
  • EnabledImages auf False und PngOptions.pngGrayScaleOnDisabled := True -> dann werden die Images ausgegraut gezeichnet.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Metallicwar

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

AW: Toolbutton grau machen + disable !!!

  Alt 3. Jan 2011, 14:56
Danke für die weiteren Antworten. Ich habe es erstmal mit dem Lösungsvorschlag von s.h.a.r.k probiert.
Habe die Eigenschaften wie beschrieben gesetzt.
Die Images in den Toolbuttons werden jetzt nicht komplett grau dargestellt, sondern dunkel und ein wenig Farbe ist zu erkennen. Sooo, aber eines ist glaube ich nicht berücksichtigt worden... Die Buttons sind weiterhin anklickbar, also habe ich die Eigenschaft Enabled der Toolbar auf False gesetzt. Beim Ausführen des Programms, sind die Toolbarbuttons aber wieder komplett disabled.. (also alles grau, so wie die Farbe des Formulars).

Könntest du mal dein Project hochladen, vll habe ich nur irgendwo ne falschen Eigenschaftswert...
Weil ich wollte ja erreichen, dass die Buttons disabled sind und in einer etwas abgeschwächtere Farbe dargestellt werden.... nicht wie momentan, wo die Images sehr dunkel sind und ein wenig Farbe enthalten.
  Mit Zitat antworten Zitat
Metallicwar

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

AW: Toolbutton grau machen + disable !!!

  Alt 3. Jan 2011, 15:59
aaarh, ich bin am verzweifeln, da muss es doch einen Weg geben. -.-
Ich sollte vll noch mal den Vorschlag von Progman ausprobieren..
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Toolbutton grau machen + disable !!!

  Alt 3. Jan 2011, 16:17
Hi,

der Weg der bei mir immer funktioniert hat:

ein entsprechendes disabled Bild in einer zweiten ImageList und die Imagelist der entsprechenden Eigenschaft der Toolbar/Toolbutton zuweisen und fertig!

Grüße
  Mit Zitat antworten Zitat
Metallicwar

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

AW: Toolbutton grau machen + disable !!!

  Alt 4. Jan 2011, 16:51
@Lemmy, ja die Idee schwirrte mir auch schon im Kopf rum, wollte eben wissen, ob es nicht doch eine Alternative gibt?
  Mit Zitat antworten Zitat
Metallicwar

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

AW: Toolbutton grau machen + disable !!!

  Alt 25. Jan 2011, 08:09
guten morgen, kann mich mal wieder mit diesem Thema beschäftigen.
Ich bin gerade dabei, den Code von Progman zu verwenden.
Delphi-Quellcode:
procedure MakeImageHalfTransparent(Source, Dest: TPNGObject);
var
  i, j: Integer;
begin
  Dest.Assign(Source);
  Dest.CreateAlpha;
  if (Dest.Header.ColorType <> COLOR_PALETTE) then
    for j := 0 to Source.Height - 1 do
      for i := 0 to Source.Width - 1 do
        Dest.AlphaScanline[j]^[i] := Dest.AlphaScanline[j]^[i] div 3;
end;
im Form.OnShow möchte ich dann die Funktion anwenden.

Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin
  MakeImageHalfTransparent(Toolbutton1, TToolbutton);
end;
Nur weiß ich leider nicht, was ich als Source, bzw. Dest. angeben soll.
Momentan erhalte ich die Fehlermeldung Inkompatible Typen TPNGObject und TToolButton.
Ich verwende eine Toolbar mit entsprechenden Toolbuttons und weiße diesen Images einer ImageList zu.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.659 Beiträge
 
Delphi 12 Athens
 
#7

AW: Toolbutton grau machen + disable !!!

  Alt 25. Jan 2011, 08:14
Source dürfte das Bild aus der ersten Imagelist sein, Dest dann die Entsprechung aus der zweiten.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz