AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Komponente: Problem mit 2x Aufruf einer Procedure + Variable
Thema durchsuchen
Ansicht
Themen-Optionen

Komponente: Problem mit 2x Aufruf einer Procedure + Variable

Ein Thema von Helmi · begonnen am 27. Dez 2004 · letzter Beitrag vom 28. Dez 2004
Antwort Antwort
Benutzerbild von Helmi
Helmi

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

Komponente: Problem mit 2x Aufruf einer Procedure + Variable

  Alt 27. Dez 2004, 15:34
Hallo,

sorry wegen dem etwas komischen Titel - aber ich weiss nicht wie man es am besten nenen soll.

Also mein Problem:

Ich hab folgendes:
Code:
type
  TBalloonTipFlags = (BT_Info, BT_Warning, BT_Error, BT_WinSymbol, BT_Question, BT_FormIcon, BT_Custom);

private
  FBalloonTipFlags: TBalloonTipFlags;

published
  property BalloonTipFlags: TBalloonTipFlags read FBalloonTipFlags
    write SetBalloonTipFlag default BT_Info;

{ ... }

procedure TTrayIcon.SetBalloonTipFlag(Value : TBalloonTipFlags);
begin
  //Wird aufgerufen wenn sich die Variable "FBalloonTipFlags" ändert
  FBalloonTipFlags := Value;

  DoBalloonTipFlags;
end;

procedure TTrayIcon.DoBalloonTipFlags;
begin
  //Flags
  case FBalloonTipFlags of
    //Info
    BT_Info      : FFlagImage.Picture.Icon.Handle := LoadIcon(0, IDI_ASTERISK);

    //Warnung
    BT_Warning   : FFlagImage.Picture.Icon.Handle := LoadIcon(0, IDI_EXCLAMATION);

    //Fehler
    BT_Error     : FFlagImage.Picture.Icon.Handle := LoadIcon(0, IDI_HAND);

    //Windows-Symbol
    BT_WinSymbol : FFlagImage.Picture.Icon.Handle := LoadIcon(0, IDI_WINLOGO);

    //Frage
    BT_Question  : FFlagImage.Picture.Icon.Handle := LoadIcon(0, IDI_QUESTION);

    //Form-Icon
    BT_FormIcon  : FFlagImage.Picture.Icon        := Application.Icon;

    //Eigenes Icon
    BT_Custom    : begin
                      FFlagImage.Picture             := FCustomFlagPicture;
                      showmessage('BT_Custom');
                    end;
  end;
Wenn ich nun das Flag: BT_Custom auswähle dann sehe ich die Meldung.

Wenn ich aber jetzt über eine Property ein TPicture auswähle dann wird folgende Procedure ausgeführt:
Code:
procedure TTrayIcon.SetCustomFlagPicture(Value: TPicture);
begin
  //Wird aufgerufen, wenn sich die Variable "FCustomFlagPicture" ändert
  FCustomFlagPicture.Assign(Value);
  DoBalloonTipFlags;
end;
Nur bei diesem Code wird die Message in der Procedure "DoBalloonTipFlags" nicht angezeigt, ob (meines Vermutens) die Variable "FBalloonTipFlags" immer noch den Wert "BT_Custom" haben müsste, oder?

Was ist daran verkehrt, dass ich beim zweiten mal die Message (die ja nur als test dient) nicht sehe?

mfg
Helmi
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

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

Re: Komponente: Problem mit 2x Aufruf einer Procedure + Vari

  Alt 27. Dez 2004, 18:11
sorry fürs posten
aber hat keine ne Ahnung warum das so ist?
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

Re: Komponente: Problem mit 2x Aufruf einer Procedure + Vari

  Alt 28. Dez 2004, 09:43
Moin Helmi,

setz mal bei FCustomFlagPicture.Assign(Value) nen Haltepunkt und geh dann mal mit F8, bzw F7(bei DoBalloonTipFlags) weiter...
Springt der in die DoBalloonTipFlags-Routine rein? Wird die Message überhaupt erreicht?

MfG
Stevie
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  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

Re: Komponente: Problem mit 2x Aufruf einer Procedure + Vari

  Alt 28. Dez 2004, 11:43
Hallo Stevie,

danke, dein Tip mit dem Haltepunkt hat mir gezeigt, dass das "SetBalloonTipFlag" gar nicht ausgeführt wird.
(klar - das Picture wird ja nicht geändert - nur das Bild des Pictures).

Ich hab jetzt meine Procedure "DoBalloonTipFlags" in das OnChange des Pictures gesetzt und schon funktionierts.

nochmals Danke

mfg
Helmi
  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 01:12 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