![]() |
ClientSocket1ReadClick...
Hi,
ich wollte wissen, wie ich es hinbekomme, dass statusbar und ein label/edit den text vom server zeigt. Jedoch sollen Sie unterschiedlichen Text anzeigen ZB: mit dem Button ComputerAuflösung soll in ein Label die auflösung gezeigt werden und in der statusbar der statut (Auflösung erhalten...) einer ne idee?? |
Hoi,
wie wäres wenn du vor jeden String schreibst was es ist also z.B: %Monitor%>>und_dann_dein_text<<. Dann kannst du auf dem Client auslesen was es ist und dieses dann passend zuordnen. |
??? ich versteh nur bahnhof ;-)
Ich glaub dafür müsste ich erst wieder ne Prozedur für die auflösung im clienten schreiben, damit er versteht was auflösung ist, weil der text ja durch die auflösung immer variert (zB 800*600, 1024*768..) und da ich das ja nicht nur mit der auflösung machen will, sondern für alle anderen komponenten, dann wäre das erstens zu viel arbeit und zweitens unübersichtlicher... andere ratschläge?? |
Machs einfach
Mach es so wie FuckRacism
Zerplück den String einfach nachdem du ihn erhalten hast und kontrollioere dann mit ner If-Bedingung ob z.B. die ersten 5 Zeichen = Monitor sind, nimmt dann den rest und dann hast du es! Wenn dein Progr. nit so viele Fallunterscheidungen braucht kannste ja nur das erste zeichen nehmen, das is dann auch net viel arbeit! If socket.receivetext[1] = 'M' then Begin ... @wardz |
ich werde es mal versuchen, thx
|
habe es mal ausprobiert, aber irgendwie funktioniet das nicht ganz. Bekomme immer eine Access Violation message. Kann mal einer ein beispiel posten, damit ich mich an dem orientiren kann?
|
So ich habe es jetzt anders gelöst, yeah^^!!
So sieht der code ungefähr aus: im Server:
Delphi-Quellcode:
im clienten:
procedure TForm1.ServerSocketClientRead(Sender: TObject;
Socket: TCustomWinSocket); var v:Socket.ReceiveText begin if v='blablabal' then begin Socket.SendText('bla1'+'blablub')); sleep(200); Socket.SendText('bla2'+'blablub2'); end; end;
Delphi-Quellcode:
(i,5,length(i)) ist der erhaltene Text ab Zeile 5 bis Ende des Textes!
procedure TForm1.ClientSocketRead(Sender: TObject;
Socket: TCustomWinSocket); var i,cmd:string; begin i:=Socket.ReceiveText; cmd:=copy(i,0,4); if cmd='bla1' then Label1.Caption:=copy(i,5,length(i)); if cmd='bla2' then Label2.Caption:copy(i,5,length(i)) end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 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