Re: Statusbar Text, Panelbreite
Lieber Sirius,
Indy 10 TdTCPClient. Ich hoffe, das ist die richtige Antwort. Gruss Max 2621 |
Re: Statusbar Text, Panelbreite
Ja, ich habs dann auch oben gelesen. Da ich Indy 9 habe kann ich dir nicht sagen, welches Ereignis da existiert. die beiden Versionen haben ziemlich große Unterschiede. Schau dir mal die Ereignisse an. Es muss ja eins geben, dass dir sagt, dass über das Netz eine neue NAchricht gekommen ist, die du auslesen kannst.
Dann etwa so (anhand deines Quelltextes; ob es mit diesem Konzept funktioniert kann ich nicht sagen):
Delphi-Quellcode:
procedure TForm1.TSReader_start;
begin TCPClient.Connect; end; procedure TForm1.TSReader_fin; begin TCPClient.Disconnect; VLCPlugin1.stop; VLCPlugin1.addTarget('http:wjonat.dyndns.org:80 :http-caching=3000)', null, VLCPlayListInsert, 0); VLCPlugin1.play; end; procedure TForm1.getTCPMessage(...);//Das ist das Ereignis deiner Komponente, so etwa wie Button1Click nur eben nicht Button sondern TCP Message angekommen; musst du mal schauen. begin msg:= TCPClient.IOHandler.ReadLn; Memo1.Lines.Add(msg); statusbar1.Panels[2].Text:=msg; //Entweder auf die MEssage prüfen oder du nimmst einen Zähler if msg='...' then TCPClient.IOHandler.WriteLn('stop') else if msg='...' then TCPClient.IOHandler.WriteLn(tune) ... else if msg='...' then TCPClient.IOHandler.WriteLn('play vlc1') else TSReader_fin; end; |
Re: Statusbar Text, Panelbreite
Hallo Max,
folgende Anregung für das Statusbar OnResize-Event...
Delphi-Quellcode:
kurze Erklärung:
procedure TfoTest9.StatusBar1Resize(Sender: TObject);
begin with StatusBar1 do begin Panels[0].Width:=50; // v--- 4*2 = Rand-/Zwischenabstände Panels[1].Width:=foTest9.Width-50-50-4*2; end; end; Vorgabe : StatusBar hat 3 Panels; Panel[0] und Panel[2] sollen immer 50 Pixel breit sein Ergebnis : mittleres Panel[1] ändert die Breite Gruß Ralph |
Re: Statusbar Text, Panelbreite
Delphi-Quellcode:
Das sollte funktionieren...
procedure TDeineForm.DeineStatusbarResize(Sender: TObject);
begin with DeineStatusbar do begin Panels[0].Width := 50; // Feste Breite links Panels[2].Width := 50; // Feste Breite rechts Panels[1].Width := DeineForm.Width - Panels[0].Width - Panels[2].Width; // Variable Breite in der Mitte end; end; [Edit] Uups, zu langsam und kein roter Kasten [/edit] |
Re: Statusbar Text, Panelbreite
[OT]
Du hast in einem Thread zwei Fragen gestellt. Vielleicht merkst du auch, dass das relativ ungünstig war, da sich jetzt der Thread aufteilt und die Bezüge teilweise fehlen. Besonders, wenn später mal jemand dasselbe Problem hat sieht er nicht mehr durch. Also demnächst bitte immer ein Thema pro Thread auch wenn die Fragen ähnlich sind (man kann ja Links setzen). Vielleicht kannst du das Thema mal teilen [/OT] |
Re: Statusbar Text, Panelbreite
Lieber Sirius, Stefan und Ralph,
vielen Dank für Eure Unterstützung. Beide Probleme sind für mich jetzt gelöst. Darüber hinaus habe ich sehr viel zum Verhalten in Foren gelernt. Nochmals herzlichen Dank Euer Max 2621 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:28 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