AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Messagebox mit farbigen TEButtons ...

Ein Thema von LOMBI · begonnen am 1. Jul 2010 · letzter Beitrag vom 1. Jul 2010
Antwort Antwort
LOMBI
(Gast)

n/a Beiträge
 
#1

Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 12:05
Hallo,

wie bitte lassen sich in nachstehender Funktion die "normalen" Buttons durch farbige TEButtons ersetzen?

Delphi-Quellcode:
function MessageDlgPosC(const Msg: string; AType:
         TMsgDlgType; EButtons:
         TMsgDlgButtons; HelpCtx: Longint; X, Y: Integer): Word;
begin
  with CreateMessageDialog(Msg, AType, EButtons) do begin
    case AType of
     mtWarning: Color := $0080FFFF;
     mtError: Color := $007171FF;
     mtInformation: Color := $00CAFFCA;
     mtConfirmation: Color := $00FFB9B9;
     mtCustom: Color := clBtnFace;
     else Color := clBtnFace;
    end;

    Caption := 'Hinweis';

    Left := X;
    Top := Y;
    Result := ShowModal;
  end;
end;
Vielen Dank vorab für Hilfe!

Gruß
Lombi
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 13:25
Gar nicht. Wenn dann musst du schon die CreateMessageDialog anschauen wo wirklich das Formular zusammengebaut wird.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
LOMBI
(Gast)

n/a Beiträge
 
#3

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 18:10
Habe den Dialog nun mit einer eigenen Form realisert.
Jetzt würde mich noch interessieren, wie ich ein
"MB_ICONQUESTION" usw. auf die Form bringe.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#4

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 18:31
Hallo,

am Besten ist wirklich "CreateMessageDialog" zu verwenden.

Aus diesem Link heraus könnte man folgendes machen:

Delphi-Quellcode:
function SpecialMessageDlg(const ACaption: string; const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; ButtonColor: TColor; HelpCtx: Longint): Integer;
var
  i: Integer;
  btn: TButton;

begin
  with CreateMessageDialog(Msg, DlgType, Buttons) do
    try
      Caption := ACaption;
      HelpContext := HelpCtx;
      for i := 0 to ComponentCount - 1 do
      begin
        if (Components[i] is TButton) then
        begin
          btn := TButton(Components[i]);
          btn.Color := ButtonColor;
        end;
      end;
      Result := ShowModal;
    finally
      Free;
    end;
end;
Aufruf über:

Delphi-Quellcode:
  If SpecialMessageDlg('Überschrift', 'Ist das eine Frage?', mtConfirmation, mbYesNoCancel, clRed, 0) = mrYes then
    ShowMessage('Ja, das war eine Frage');
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
LOMBI
(Gast)

n/a Beiträge
 
#5

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 18:54
Hallo Helmi,

bei deiner Funktion meckert mein Progi, dass auf ein protected-Symbol TControl.Color nicht zugegriffen werden kann! Lassen sich vielleicht
die TEButtons doch noch verwenden?
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#6

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 18:57
Hallo Helmi,

bei deiner Funktion meckert mein Progi, dass auf ein protected-Symbol TControl.Color nicht zugegriffen werden kann! Lassen sich vielleicht
die TEButtons doch noch verwenden?
Mist! - ich vergaß dass man TButtons keine Farbe zuordnen kann
Sorry
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
LOMBI
(Gast)

n/a Beiträge
 
#7

AW: Messagebox mit farbigen TEButtons ...

  Alt 1. Jul 2010, 19:00
Muß ich mich also mit meiner Dialogform ohne Icons begnügen?
  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 07:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz