AGB  ·  Datenschutz  ·  Impressum  







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

Media Center entwickeln

Ein Thema von Cyberaxx · begonnen am 23. Jan 2008 · letzter Beitrag vom 5. Jun 2008
 
Benutzerbild von Cyberaxx
Cyberaxx

Registriert seit: 15. Jul 2005
311 Beiträge
 
Delphi XE5 Professional
 
#12

Re: Media Center entwickeln

  Alt 26. Jan 2008, 01:17
Mal eine kleine Nebenfrage...

Meine Panel besitzen die Eigenschaft OnClick und reagieren auch auf den Click der Fernbedienung.
Beim leeren der Menüliste bekomme ich natülich eine AV. Er ist noch in der Procedure drin aber eigentlich existiert das Objekt nicht mehr. Wie könnte ich das umgehen?

Delphi-Quellcode:
procedure TMenuManager.OnClick(Sender: TObject);
begin
  if Assigned(FItemClick) then begin
    if Sender is TJvPanel then begin
      Self.SetActiveButton(TJvPanel(Sender).Tag);
      //Self.FActiveButton := TJvPanel(Sender).Tag;
      OnItemClick(Self);
      // <-- panel existiert nicht mehr
      end;
    end; // hier error!!!!!!!!!!!!!!!!!
end;
mit OnItemClick wird folgendes aufgerufen

Delphi-Quellcode:
procedure TMain_Frm.SelectPressed;
  var
    I: Integer;
begin
  case Self.FCC.PlayerMode of
    // Hauptmenü
    pmMain: begin
                    case Self.FMenuManager.ButtonActive of
                      // Musik Menü aktiv setzen
                      0: begin
                          Self.FOSD.Show('Musik Modus', 2000);
                          Self.FCC.PlayerMode := pmMusik;
                          Self.FMenuManager.ClearButtons;
                          end;
                      // DVD Menü aktiv setzen
                      1: begin
                          Self.FOSD.Show('DVD Modus', 2000);
                          Self.FCC.PlayerMode := pmDVD;
// Self.FMenuManager.ClearButtons;
                          for I := Self.FMenuManager.Count -1 downto 0 do
                            Self.FMenuManager.RemoveButton(I);
                          end;
Er springt nachher in das OnClick Ereignis zurück und dort kommt die AV.

Weiß jemand eine saubere Lösung womit ich sie auch wieder entfernen kann?
Daniel
Das Aufwachen aus einem boesen Traum muss einen nicht erleichtern. Es kann einen auch erst richtig gewahr werden lassen, was man Furchtbares getraeumt hat, vielleicht sogar welcher furchtbaren Wahrheit man im Traum begegnet ist!
  Mit Zitat antworten Zitat
 


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 13:51 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