AGB  ·  Datenschutz  ·  Impressum  







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

Stringgrid befüllen > massives Timingproblem

Ein Thema von richard_boderich · begonnen am 12. Jul 2004 · letzter Beitrag vom 12. Jul 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

Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 11:52
hallo leute,

hab echt timingprobleme mit einem stringgrid
progge grade an nen hexeditor, programm ist im anhang
einfach mal mit oeffnen ne datei waehlen,und mal mit maus auf das hexstringgrid klicken,
dann mal mit page down taste scrollen, guckt euch mal das scolling der einzellnen grids an

des linke offsetgrid ist kein problem, ascii grid rechts geht auch noch, aber das hexgrid in der mitte,
ist ja wohl unter aller bescheidenheit!

habe waehrend des scrollings schon nicht benoetigte ereignisse deaktiviert (z.b. onselectcell)

ich denke das problem muss an der while schleife liegen , die ich nutze um die grids mit daten aus einem array zu befuellen
das dauert denk ich einfach zu lange, waere dankbar für irgentwelche alternativen, vorschlaege, oder bemerkungen dazu.
muss doch was schnelleres dafür geben
Angehängte Dateien
Dateityp: rar project2.rar (198,2 KB, 22x 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 Sharky
Sharky

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

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 12:14
Hai richard,

selbst bei meinen 1280x1024 passt das Programm nicht auf den Bildschrim.
Wenn ich scrolle beweget sich der Vertikalescrollbalken nicht.
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
 
#3

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 12:19
hallo sharky,

super das du dich mal wieder so schnell meines problem's angenommnen hast

also das prog ist für ne aufloesung von 1600x1200 gedacht. die ich auf meinem desktop fahre

wenn du in dieser aufloesung arbeitest, solltest du ueberhaupt keine scrollbalken haben, die darstellung
der daten erfolgt derzeitnoch seitenweise, scrollen sollst du nur mit pagedown taste, alles
andere funzt noch nich, da das project noch im anfangststadion ist bzw. eine machbarkeits und designstudie
ist
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
 
#4

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 12:24
Zitat von richard_boderich:
...wenn du in dieser aufloesung arbeitest, solltest du ueberhaupt keine scrollbalken haben, die darstellung...
Mein TFT kann nicht mehr Aber wenn ich eine 30 MB-Datei einlese ist der rechte Scrollbalken auf jeden fall zu sehen.
Habe es eben noch einmal versucht. Wenn ich mit PageDown nach unten gehe ist nicht von einem Timingproblem zu sehen. PageUp geht ja wohl noch nicht?
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
 
#5

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 12:27
kann nich sein ,habs grad nochma gecheckt, mit ner 800 mb film datei
ich hab keine scroll balken, muss wohl an der aufloesung liegen
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 richard_boderich
richard_boderich

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

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 13:52
ok sharky hier ist der code

Delphi-Quellcode:
procedure Ausgabe();

begin

i:=0;
c:=0;


while i<=1408 do
begin

form1.stringgrid4.Cells[0,c]:=inttohex(filepos(f),16); {hexpos} // fehler : ich weiß muss inttohex(filepos(f)+i,16)

form1.stringgrid5.Cells[1,c]:=inttohex(matrix[i],2);
form1.stringgrid5.Cells[2,c]:=inttohex(matrix[i+1],2);
form1.stringgrid5.Cells[3,c]:=inttohex(matrix[i+2],2);
form1.stringgrid5.Cells[4,c]:=inttohex(matrix[i+3],2);
form1.stringgrid5.Cells[5,c]:=inttohex(matrix[i+4],2);
form1.stringgrid5.Cells[6,c]:=inttohex(matrix[i+5],2);
form1.stringgrid5.Cells[7,c]:=inttohex(matrix[i+6],2);
form1.stringgrid5.Cells[8,c]:=inttohex(matrix[i+7],2);

//form1.stringgrid5.Cells[9,c]:=' - ';

form1.stringgrid5.Cells[10,c]:=inttohex(matrix[i+8],2);
form1.stringgrid5.Cells[11,c]:=inttohex(matrix[i+9],2);
form1.stringgrid5.Cells[12,c]:=inttohex(matrix[i+10],2);
form1.stringgrid5.Cells[13,c]:=inttohex(matrix[i+11],2);
form1.stringgrid5.Cells[14,c]:=inttohex(matrix[i+12],2);
form1.stringgrid5.Cells[15,c]:=inttohex(matrix[i+13],2);
form1.stringgrid5.Cells[16,c]:=inttohex(matrix[i+14],2);
form1.stringgrid5.Cells[17,c]:=inttohex(matrix[i+15],2);

//form1.stringgrid5.Cells[18,c]:=' - ';

form1.stringgrid5.Cells[19,c]:=inttohex(matrix[i+16],2);
form1.stringgrid5.Cells[20,c]:=inttohex(matrix[i+17],2);
form1.stringgrid5.Cells[21,c]:=inttohex(matrix[i+18],2);
form1.stringgrid5.Cells[22,c]:=inttohex(matrix[i+19],2);
form1.stringgrid5.Cells[23,c]:=inttohex(matrix[i+20],2);
form1.stringgrid5.Cells[24,c]:=inttohex(matrix[i+21],2);
form1.stringgrid5.Cells[25,c]:=inttohex(matrix[i+22],2);
form1.stringgrid5.Cells[26,c]:=inttohex(matrix[i+23],2);

//form1.stringgrid5.Cells[27,c]:=' - ';

form1.stringgrid5.Cells[28,c]:=inttohex(matrix[i+24],2);
form1.stringgrid5.Cells[29,c]:=inttohex(matrix[i+25],2);
form1.stringgrid5.Cells[30,c]:=inttohex(matrix[i+26],2);
form1.stringgrid5.Cells[31,c]:=inttohex(matrix[i+27],2);
form1.stringgrid5.Cells[32,c]:=inttohex(matrix[i+28],2);
form1.stringgrid5.Cells[33,c]:=inttohex(matrix[i+29],2);
form1.stringgrid5.Cells[34,c]:=inttohex(matrix[i+30],2);
form1.stringgrid5.Cells[35,c]:=inttohex(matrix[i+31],2);



 {asc anzeige }
temp0:=matrix[i];
temp1:=matrix[i+1];
temp2:=matrix[i+2];
temp3:=matrix[i+3];
temp4:=matrix[i+4];
temp5:=matrix[i+5];
temp6:=matrix[i+6];
temp7:=matrix[i+7];
temp8:=matrix[i+8];
temp9:=matrix[i+9];
temp10:=matrix[i+10];
temp11:=matrix[i+11];
temp12:=matrix[i+12];
temp13:=matrix[i+13];
temp14:=matrix[i+14];
temp15:=matrix[i+15];
temp16:=matrix[i+16];
temp17:=matrix[i+17];
temp18:=matrix[i+18];
temp19:=matrix[i+19];
temp20:=matrix[i+20];
temp21:=matrix[i+21];
temp22:=matrix[i+22];
temp23:=matrix[i+23];
temp24:=matrix[i+24];
temp25:=matrix[i+25];
temp26:=matrix[i+26];
temp27:=matrix[i+27];
temp28:=matrix[i+28];
temp29:=matrix[i+29];
temp30:=matrix[i+30];
temp31:=matrix[i+31];


if temp0 < 21 then temp0:=46;
if temp1< 21 then temp1:=46;
if temp2< 21 then temp2:=46;
if temp3<21 then temp3:=46;
if temp4<21 then temp4:=46;
if temp5<21 then temp5:=46;
if temp6<21 then temp6:=46;
if temp7<32 then temp7:=46;
if temp8<32 then temp8:=46;
if temp9<32 then temp9:=46;
if temp10<32 then temp10:=46;
if temp11<32 then temp11:=46;
if temp12<32 then temp12:=46;
if temp13<32 then temp13:=46;
if temp14<32 then temp14:=46;
if temp15<32 then temp15:=46;
if temp16< 32 then temp16:=46;
if temp17< 32 then temp17:=46;
if temp18< 32 then temp18:=46;
if temp19<32 then temp19:=46;
if temp20<32 then temp20:=46;
if temp21<32 then temp21:=46;
if temp22<32 then temp22:=46;
if temp23<32 then temp23:=46;
if temp24<32 then temp24:=46;
if temp25<32 then temp25:=46;
if temp26<32 then temp26:=46;
if temp27<32 then temp27:=46;
if temp28<32 then temp28:=46;
if temp29<32 then temp29:=46;
if temp30<32 then temp30:=46;
if temp31<32 then temp31:=46;



form1.stringgrid6.Cells[1,c]:=chr(temp0);
form1.stringgrid6.Cells[2,c]:=chr(temp1);
form1.stringgrid6.Cells[3,c]:=chr(temp2);
form1.stringgrid6.Cells[4,c]:=chr(temp3);
form1.stringgrid6.Cells[5,c]:=chr(temp4);
form1.stringgrid6.Cells[6,c]:=chr(temp5);
form1.stringgrid6.Cells[7,c]:=chr(temp6);
form1.stringgrid6.Cells[8,c]:=chr(temp7);
form1.stringgrid6.Cells[9,c]:=chr(temp8);
form1.stringgrid6.Cells[10,c]:=chr(temp9);
form1.stringgrid6.Cells[11,c]:=chr(temp10);
form1.stringgrid6.Cells[12,c]:=chr(temp11);
form1.stringgrid6.Cells[13,c]:=chr(temp12);
form1.stringgrid6.Cells[14,c]:=chr(temp13);
form1.stringgrid6.Cells[15,c]:=chr(temp14);
form1.stringgrid6.Cells[16,c]:=chr(temp15);
form1.stringgrid6.Cells[17,c]:=chr(temp16);
form1.stringgrid6.Cells[18,c]:=chr(temp17);
form1.stringgrid6.Cells[19,c]:=chr(temp18);
form1.stringgrid6.Cells[20,c]:=chr(temp19);
form1.stringgrid6.Cells[21,c]:=chr(temp20);
form1.stringgrid6.Cells[22,c]:=chr(temp21);
form1.stringgrid6.Cells[23,c]:=chr(temp22);
form1.stringgrid6.Cells[24,c]:=chr(temp23);
form1.stringgrid6.Cells[25,c]:=chr(temp24);
form1.stringgrid6.Cells[26,c]:=chr(temp25);
form1.stringgrid6.Cells[27,c]:=chr(temp26);
form1.stringgrid6.Cells[28,c]:=chr(temp27);
form1.stringgrid6.Cells[29,c]:=chr(temp28);
form1.stringgrid6.Cells[30,c]:=chr(temp29);
form1.stringgrid6.Cells[31,c]:=chr(temp30);
form1.stringgrid6.Cells[32,c]:=chr(temp31);

inc(i,32);
inc(c,1);
end;
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
 
#7

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 13:58
Hai richard_boderich,

versuche mal vor deiner While-Schleife:
Delphi-Quellcode:
  StringGrid4.Cols.BeginUpdate;
  StringGrid4.Rows.BeginUpdate;
und danach:
Delphi-Quellcode:
  StringGrid4.Cols.EndUpdate;
  StringGrid4.Rows.EndUpdate;
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
 
#8

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 14:10
grueß gott sharky!

also, wie du siehst, ist die procedure ausgabe nicht bestandteil der form,
ich muss deinen aufruf also jeweil's umwandeln von
Delphi-Quellcode:
  
StringGrid4.Cols.beginUpdate;
in

form1.StringGrid4.Cols.beginUpdate; desweiteren, versteht ich nich wieso bei grid 4 und nicht grid 5 ?

naja, hab das so gemacht wie du gesagt hast, und bekomme jetz compilerfehlermeldung


Code:
"[" erwartet aber "." gefunden
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
 
#9

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 14:27
Zitat von richard_boderich:
...desweiteren, versteht ich nich wieso bei grid 4 und nicht grid 5 ?
Da habe ich mich verguckt
Ich sehe eben das man das für jede Zeile und Spalte angeben muss.
Dann mache schnell eine eigene Procedure für das Grid.
Z.B.:
Delphi-Quellcode:
procedure SGBeginUpdate (sg : TStringGrid);
var
  ndx : Integer;
begin
  for ndx := 0 to sg.RowCount -1 do
  begin
    sg.Rows[ndx].BeginUpdate;
  end;
end;

procedure SGEndUpdate (sg : TStringGrid);
var
  ndx : Integer;
begin
  for ndx := 0 to sg.RowCount -1 do
  begin
    sg.Rows[ndx].EndUpdate;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  SGBeginUpdate(Form1.StringGrid5);
  //Jetzt füllst Du dein HEX-Grid;
  SGEndUpdate(Form1.StringGrid5);
end;
Aber ob es wirklich daran liegt kann ich nicht sagen
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
 
#10

Re: Stringgrid befüllen > massives Timingproblem

  Alt 12. Jul 2004, 14:50
hi sharky,


also es funktioniert jetz, aber ich habe noch nich begriffen warum

ich habe in der delphi hilfe gesucht, habe update aber nur im zusammenhang
mit kompletten grids gefunden, aber nich im context mit zellen

wenn ich das richtig blicke, dann sorgt update dafürdas nur die geanderten regionen
eines objects neu gezeichnet werden,

aber

> in der dephi hilfe steht zum context stringgrids und update, "haufige oder unoetige aufrufe von update, koennen die anwendung
drastisch verlangsamen"

kannst dur mir erklaeren , was genau das update macht und warum es jetz schneller lauft, und nich langsamer,
denn eigentlich fuehre ich jetzt noch mehr code aus???

PS: du bist der beste, ich kauf dir jetz n neues AQUARIUM *blubb....blub,blub*
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
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 08:09 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