AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Problem mit Bittmap in Button (BitBtn)
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Bittmap in Button (BitBtn)

Ein Thema von egon.kaschuba · begonnen am 14. Jul 2009 · letzter Beitrag vom 17. Jul 2009
Antwort Antwort
egon.kaschuba

Registriert seit: 2. Jun 2006
Ort: Buxtehude
80 Beiträge
 
Delphi 7 Architect
 
#1

Problem mit Bittmap in Button (BitBtn)

  Alt 14. Jul 2009, 21:48


Hallo,
wenn ich auf dem Button Klicke soll ein Disk_Open.BMP
in dem Button erscheinen.
Klicke ich dann nochmal auf den Button soll ein Disk_Close.BMP
in dem Button erscheinen.

Delphi-Quellcode:
procedure TFormDVDPlayer.cdOpenClick(Sender: TObject);
begin
 if fOpen = False then begin // ist CD-Laufwerk offen?

//*******************************************************************************************
  ImageList4.GetBitmap(2, Web_Open.Glyph); // aus ImageList Bild öffnen u. in Button ablegen
  // z.B Disk_Open.BMP
//*******************************************************************************************


  mciSEndString('SET CDAUDIO DOOR OPEN WAIT' , nil ,0, Self.Handle); // wenn nicht, öffne
  fOpen := True;
 end
 else begin
 
//******************************************************************************************
  ImageList4.GetBitmap(1, Web_Open.Glyph); // aus ImageList Bild öffnen u. in Button ablegen
  // z.B Disk_Close.BMP
//******************************************************************************************

  mciSEndString('SET CDAUDIO DOOR CLOSED WAIT' , nil ,0, Self.Handle); // wenn ja, schließe
  fOpen := False;
end
     end;


kann mir einer bei meinem Problem helfen?


Gruß
- Egon
Glück ist das einzige was sich verdoppelt,wenn man es teilt.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Problem mit Bittmap in Button (BitBtn)

  Alt 15. Jul 2009, 07:05
Tipp:
Verwende ActionLists!
Erstelle zwei Actions (ActionOpen und ActionClose) und schreibe deinen Code (mciSEndString....)
in die Eventhandler von OnExecute der Actions.

Du kannst jetzt den Bitbutton ganz einfach von einer Action auf die andere umstellen:
Delphi-Quellcode:
BitnBtn1.Action := ActionClose;
// beziehungsweise
BitnBtn1.Action := ActionOpen;
Dabei ändert sich die Caption, Bitmap und der Eventhandler beim Klicken auf einen Rutsch.
Sehr interessant bei Actions ist auch der Hotkey.
Du kannst z.B. der ActionOpen den Hotkey Strg-O zuweisen.
fork me on Github
  Mit Zitat antworten Zitat
egon.kaschuba

Registriert seit: 2. Jun 2006
Ort: Buxtehude
80 Beiträge
 
Delphi 7 Architect
 
#3

Re: Problem mit Bittmap in Button (BitBtn)

  Alt 15. Jul 2009, 12:32


Hallo sx2008.

Danke für den Tip, aber ich habe einfach mal NACHGEDACHT,
und die Zeile geändet mit ... cdOpen.ImageIndex:=54 (Öffnen) b.z.w. cdOpen.ImageIndex:=55 (Schließen)

Das funktioniert bestens.

Gruß
- Egon



Delphi-Quellcode:
procedure TFormDVDPlayer.cdOpenClick(Sender: TObject);
begin
 if fOpen = False then begin // ist CD-Laufwerk offen?

  mciSEndString('SET CDAUDIO DOOR OPEN WAIT' , nil ,0, Self.Handle); // wenn nicht, öffne
  cdOpen.ImageIndex:=54; // Öffnen.bmp
  fOpen := True;
 end
 else begin
   mciSEndString('SET CDAUDIO DOOR CLOSED WAIT' , nil ,0, Self.Handle); // wenn ja, schließe

  cdOpen.ImageIndex:=55; // Schließen.bmp
  fOpen := False;
end
     end;
Glück ist das einzige was sich verdoppelt,wenn man es teilt.
  Mit Zitat antworten Zitat
15. Jul 2009, 13:35
Dieses Thema wurde von "mkinzler" von "Freeware" nach "Multimedia" verschoben.
Ist kein Freeware Programm
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Problem mit Bittmap in Button (BitBtn)

  Alt 17. Jul 2009, 01:18
Zitat von egon.kaschuba:
Danke für den Tip, aber ich habe einfach mal NACHGEDACHT,...
Mag sein, aber wenn du ein bisschen weiter nachdenkst, kommst du drauf, dass Actions und ActionLists
das Programmieren vereinfachen und verbessern.
Z.B. entfällt dann die Variable fOpen.
Man kann z.B. Actions gleichzeitig mit einem Button und einem Menüpunkt verknüpfen.
Du brauchst im Moment vielleicht kein Menü, aber der Kopf ist rund, damit das Denken die Richtung ändern kann.
fork me on Github
  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 21:55 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