AGB  ·  Datenschutz  ·  Impressum  







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

seltsames Phänomen im stringgrid ?!?

Ein Thema von richard_boderich · begonnen am 25. Jun 2004 · letzter Beitrag vom 27. Jun 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#1

seltsames Phänomen im stringgrid ?!?

  Alt 25. Jun 2004, 22:50
ok leute,habe ein stringgrid in dem ich mehrere Spalten gesperrt hab. 9 , 18 und 27
die folgende routine hab ich erstellt um die gesperrten spalten zu ueberspringen.
funktioniert auch super, der cursor macht genau das was er soll kann von 1 bis 32
mit pfeil tasten "rechts /links" durchgehen und die gesperrten werden uebersprungen.
nun zu meinem eigentlichen problem

also ich berechne aus col und row-wert einen indexwert fuer ein normales array

z.B.

colcount=10
rowcount=10

col=5
row=5

indexwert=50

dazu muss ich den col und rowwert abfragen, habe zum test die labelanweiseung drin
das komische ist, das die angezeigten col werte manchmal nich mit den positionen
des gridcursors uebereinstimmen z.b. wenn ich bei celle 1 1x pfeil rechts druecke geht zwar der cursor eine zelle
nach rechts, aber der col wert bleibt 1, wenn ich dann 1x pfeil nach links druecke, so geht der cursor 1 schritt nach links,
aber der colwert ist dann 2 bzw wird als 2 im label angezeigt, finde das sehr seltsam, weil ich dachte gridcursor und
col und row wert staenden in direkter abhaengikeit zueinander. und normalerweise muesste er bei "pfeil links" kleiner werden
und nich groesser

Delphi-Quellcode:
procedure TForm1.StringGrid5SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
CanSelect:=Not ((ACol=9) or (Acol=18) or (Acol=27) and (ARow=stringgrid5.row));
if (canselect=false) and (stringgrid5.col>acol) then stringgrid5.col:=Stringgrid5.col-4;
if (canselect=false) and (stringgrid5.col<acol) then stringgrid5.col:=Stringgrid5.col+2;
label1.Caption:=inttostr(stringgrid5.col);
end;
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 19:15
Delphi-Quellcode:
procedure TForm1.StringGrid5SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  CanSelect:=Not ((ACol=9) or (Acol=18) or (Acol=27) and (ARow=stringgrid5.row));
  if (canselect=false) and (stringgrid5.col>acol) then stringgrid5.col:=Stringgrid5.col-4;
  if (canselect=false) and (stringgrid5.col<acol) then stringgrid5.col:=Stringgrid5.col+2;
  label1.Caption:=inttostr(Acol); // <- hier habe ich mal ACol genommen.
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#3

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 19:42
Neue Version:

Delphi-Quellcode:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
var
  myACol : Integer;
begin
  myAcol := Acol;
  CanSelect:=Not ((ACol=9) or (Acol=18) or (Acol=27));
  if not (CanSelect) then
  begin
    if (stringgrid1.col>acol) then
    begin
     stringgrid1.col:=Stringgrid1.col-2;
     DEC (myACol);
    end
    else
    begin
      stringgrid1.col:=Stringgrid1.col+2;
      Inc (myACol);
    end;
  end;
  label1.Caption:=inttostr(myacol);
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#4

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 20:41
hab mal mein testproject angehaengt, besteht nur aus grid, label und deiner routine
macht die selbe exeption,

PS: bewege mal nich die maus, wenn du linke taste gedrueckt hälts
Angehängte Dateien
Dateityp: rar f_r_sharky.rar (187,0 KB, 12x aufgerufen)
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Mirilin
Mirilin

Registriert seit: 21. Dez 2002
Ort: Lenzburg
861 Beiträge
 
Delphi 6 Professional
 
#5

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:02



Ich kann den Fehler nur bestätigen (Stackoverflow)

mfg Tobias
Tobias
Die Physik ist für die Physiker eigentlich viel zu schwer.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:09
Versuche mal das, kommt dann noch der Fehler:

Delphi-Quellcode:
procedure TForm1.StringGrid5SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);

var
  myACol : Integer;
begin
  myAcol := Acol;
  CanSelect:=Not ((ACol=9) or (Acol=18) or (Acol=27));
  if not (CanSelect) then
  begin
    if (stringgrid5.col>acol) then
    begin
      if not (stringgrid5.col <= stringgrid5.ColCount - 2) then //hier
      stringgrid5.col:=Stringgrid5.col-2;
      DEC (myACol);
    end
    else
    begin
      if not (stringgrid5.col <= stringgrid5.ColCount + 2) then //hier
      stringgrid5.col:=Stringgrid5.col+2;
      Inc (myACol);
    end;
  end;
  label1.Caption:=inttostr(myacol);
end;
  Mit Zitat antworten Zitat
Benutzerbild von richard_boderich
richard_boderich

Registriert seit: 21. Jun 2004
Ort: Berlin
1.067 Beiträge
 
Delphi 7 Architect
 
#7

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:27
ne, aber er ueberspringt die gesperrten zellen nich mehr
mfG Richard

Cimmams schrieb "das einzige was an ArmA gut ist, ist die Grafik bis 100m und der Rest ist so unreal wie unsere Demokratie."
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:28
Mist, hab das mit den gesperrten SPalten übersehen, probiere mal das hier:

Delphi-Quellcode:
procedure TForm1.StringGrid5SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);

var
  myACol : Integer;
begin
  myAcol := Acol;
  CanSelect:=Not ((myACol=9) or (myAcol=18) or (myAcol=27));
  if not (CanSelect) then
  begin
    if (stringgrid5.col>acol) then
    begin
      stringgrid5.col:=myAcol-1;
      DEC (myACol);
    end
    else
    begin
      stringgrid5.col := myACol+1;
      Inc (myACol);
    end;
  end;
  label1.Caption:=inttostr(myacol);
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#9

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:32
Zitat von Mirilin:
...Ich kann den Fehler nur bestätigen (Stackoverflow) ...
Ich verstehe es einfach nicht. Wann kommt da bei euch ein Fehler?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Mirilin
Mirilin

Registriert seit: 21. Dez 2002
Ort: Lenzburg
861 Beiträge
 
Delphi 6 Professional
 
#10

Re: seltsames Phänomen im stringgrid ?!?

  Alt 27. Jun 2004, 21:34
Sharky

Maustaste drücken und halten und wie wild damit umherfahren...

mfg Tobias
Tobias
Die Physik ist für die Physiker eigentlich viel zu schwer.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:20 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