AGB  ·  Datenschutz  ·  Impressum  







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

Array versendbar?

Ein Thema von Sheak · begonnen am 2. Jan 2008 · letzter Beitrag vom 5. Jan 2008
Antwort Antwort
Seite 2 von 2     12   
Sheak

Registriert seit: 2. Jan 2008
6 Beiträge
 
Delphi 7 Personal
 
#11

Re: Array versendbar?

  Alt 5. Jan 2008, 17:19
Delphi-Quellcode:
type
  CustomRec = record
    Code:Array[0..6] of Integer;
    end;

var
  Brett: TBrett;
  PosX,PosY,PosXX,PosYY,PosXXX,PosYYY,Modus:Integer;
  Rec: CustomRec;


implementation


procedure TBrett.BrettFlaecheMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
 begin
  Variablen neu definieren;
  Aktualiseren;
  Senden;
 end;

procedure TZeichenbrett.Aktualisieren;
 begin
     Rec.Code[0]:=Modus;
     Rec.Code[1]:=PosX;
     Rec.Code[2]:=PosY;
     Rec.Code[3]:=PosXX;
     Rec.Code[4]:=PosYY;
     Rec.Code[5]:=PosXXX;
     Rec.Code[6]:=PosYYY;
 end;

procedure TZeichenBrett.Senden;
  begin
    ClientSocket1.Socket.SendBuf(Rec,sizeof(Rec));
Hab ja definiert dass der bei jeder Mausbewegung die Arraywerte aktualisert und gesendet werden sollen. Aber er tut es nicht. Hat jemand ne Idee oder einen rettenden Hinweis für mich?
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#12

Re: Array versendbar?

  Alt 5. Jan 2008, 17:36
Ja, du aktualisiert das Array, in dem du dem Array die Inhalte der Variablen PosX, PosY, PosXX, PosYY, PosXXX und PosYYY zuweist. Aber wo bitte aktualisiert du diese Variablen? Wenn die niemals neue Werte bekommen, wieso sollten sie dann auch neue beinhalten? Die denken sich das ja nicht aus und es gibt keine Automatismen dass bestimmte Variablennamen immer automatisch bestimmte Werte bekommen.
  Mit Zitat antworten Zitat
Sheak

Registriert seit: 2. Jan 2008
6 Beiträge
 
Delphi 7 Personal
 
#13

Re: Array versendbar?

  Alt 5. Jan 2008, 17:41
Delphi-Quellcode:
procedure TBrett.ZeichenFlaecheMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
  begin
    If RbNormal.Checked=True
      Then Modus:=1 else
    If RbWürfel.Checked=True
      Then Modus:=2 else
    If RbKreis.Checked=True
      Then Modus:=3 else
    Zeichenmodus:=1;

    PosXX:=PosX;
    PosYY:=PosY;
    PosX:=X;
    PosY:=Y;

     Aktualisieren;

     Senden;

   end;
Sry hab den Abschnitt vercheckt zu posten.
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#14

Re: Array versendbar?

  Alt 5. Jan 2008, 18:05
Ok, du hast zwei Klassen. Einmal ein TBrett und dann eine TZeichenflaeche. Dann hast du dazu globale Variablen PosX,PosY,PosXX,PosYY,PosXXX,PosYYY. Diese Variablen sind auch definitiv nirgendwo anders nochmal definiert? Also z.B. im TBrett oder in TZeichenflaeche?

Und warum nutzt du überhaupt globale Variablen? Es ist (wie du jetzt vllt. schon merkst) schwer zu durchschauen und somit auch schlecht debugbar. Vor allem wenn eine Klasse die Variablen befüllen soll und eine ganz andere die wieder auslesen soll. Schon allein, da noch alle anderen genauso diese ändern können.

Was sagt dir eigentlich der Debugger? Schonmal einen Haltepunkt gesetzt wo du die Variablen zuweist und genauso auch mal dort wo du die Variablen wieder ausliest?
  Mit Zitat antworten Zitat
Sheak

Registriert seit: 2. Jan 2008
6 Beiträge
 
Delphi 7 Personal
 
#15

Re: Array versendbar?

  Alt 5. Jan 2008, 19:33
Jo ist bisle unübersichtlich, ich weiß. ^^

Hab den Fehler gefunden. Bei der ClientRead-Methode fehlte mir vor dem ReceiveBuf(Rec,SizeOf(Rec)); das Socket.

/Close Plz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 22:30 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