Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi zahlen in stringgrid speichern (https://www.delphipraxis.net/36667-zahlen-stringgrid-speichern.html)

tobiasw 23. Dez 2004 11:18


zahlen in stringgrid speichern
 
hi,

ich gebe zahlen max 10 in ein edit feld ein un klicke dann auf den button in feld übernehmen dann soll er mir die zahlen in einem stringrid anzeigen. Ich habe auch schon etwas Code nur ich komme auf keinen grünen zweig. Vielleicht sieht ja jemand wie ich es richtig machen muss.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var zahl:integer;
var i:string;
begin
i:=Edit1.text;
stringgrid1.cells[1,i]:=inttostr(zahl);
end;
Gruß u. Frohe Weihnachten

kiar 23. Dez 2004 11:33

Re: zahlen in stringgrid speichern
 
hallo tobias,
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var zahl
    , i :integer;

begin
i:=StrtoInt(Edit1.text);
stringgrid1.cells[1,i]:=inttostr(zahl);
end;
versuche es mal so.

raik

tobiasw 23. Dez 2004 11:42

Re: zahlen in stringgrid speichern
 
gut danke für deine Antwort

er schreibt mir aber keine Zahl in das Stringgrid. Außerdem sagt er das die variable zahl nicht richtig initalisiert worden ist

Jasocul 23. Dez 2004 11:45

Re: zahlen in stringgrid speichern
 
Zitat:

Zitat von tobiasw
er schreibt mir aber keine Zahl in das Stringgrid. Außerdem sagt er das die variable zahl nicht richtig initalisiert worden ist

In Zahl steht ja auch noch nichts drin.

kiar 23. Dez 2004 11:46

Re: zahlen in stringgrid speichern
 
hallo,

die musst du schon festlegen:
Delphi-Quellcode:
zahl:= 10;
sollte helfen

tobiasw 23. Dez 2004 11:53

Re: zahlen in stringgrid speichern
 
gut dann sieht der Code jetzt so aus, zwar kommen keine Fehler aber es geht immer noch nicht

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var zahl,i:integer;

begin
zahl:=10;
i:=StrtoInt(Edit1.text);
stringgrid1.cells[1,i]:=inttostr(zahl);
end;

kiar 23. Dez 2004 11:59

Re: zahlen in stringgrid speichern
 
stimmen deine rows mit der in edit1 einge´benen zahl überein, die darf nämlich nicht größer sein?

edit: kommentiere mal die zweite zeile aus und schreibe statt
Delphi-Quellcode:
stringgrid1.cells[1,i]...

stringgrid1.cells[1,1]...

Joe24 23. Dez 2004 12:06

Re: zahlen in stringgrid speichern
 
versuche es mal so:


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  try
    StrToInt( Edit1.Text);
    with Stringgrid1 do
      begin
        Cells[ 1, stringgrid1.RowCount -1] := Edit1.Text;
        RowCount := RowCount +1;
      end;
  except
    on EConvertError do
      MessageBox( 0, 'Eintrag ist keine Zahl!','ERROR',0);
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Stringgrid1.RowCount := 1;
end;

kiar 23. Dez 2004 12:11

Re: zahlen in stringgrid speichern
 
hallo joe24,

erstmal herzlich willkommen in der DP,

und gleich zur mahnung :mrgreen: formatiere deinen quelltext bitte mit den delphi tags

Joe24 23. Dez 2004 12:19

Re: zahlen in stringgrid speichern
 
Danke, die Tags habe ich jetzt auch entdeckt.
War schon verwundert darüber, dass mein Beitrag nach dem posten so formlos dargestellt wurde.

tobiasw 23. Dez 2004 12:23

Re: zahlen in stringgrid speichern
 
colcount ist 1 und Row Count 10

hat noch jemand eine Idee
@joe finde ich ist doch ziemlich kompliziert

Gruß

Christian Seehase 23. Dez 2004 12:23

Re: zahlen in stringgrid speichern
 
Moin Joe,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Zitat:

Zitat von Joe24
Danke, die Tags habe ich jetzt auch entdeckt.

Dann setz' sie doch auch ein ;-)

Deinen Beitrag kannst Du mit dem Edit-Button bearbeiten.
Danke.

kiar 23. Dez 2004 12:25

Re: zahlen in stringgrid speichern
 
tobias,

einfacher, als ich es oben geschrieben habe geht es wirklich nicht,
und nun zu deiner überrraschung es funktioniert auch noch.

raik

tobiasw 23. Dez 2004 12:39

Re: zahlen in stringgrid speichern
 
dann poste doch bitte mal deinen gesamten code. Der Code von Joe funktioniert schonmal. Nur weiß ich nicht wie ich dort dann ein Meldungsfenster machen soll wenn die Eingabe der Zahlen größer als 10 ist.

Gruß

Joe24 23. Dez 2004 12:46

Re: zahlen in stringgrid speichern
 
So, jetzt mit implementierten "Zahlen > 10"-Filter!


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  try
    if StrToInt( Edit1.Text) > 10 then
      MessageBox( 0, 'Es werden keine Zahlen > 10 akzeptiert!','HINWEIS',48) else
    with Stringgrid1 do
      begin
        Cells[ 1, stringgrid1.RowCount -1] := Edit1.Text;
        RowCount := RowCount +1;
      end;
  except
    on EConvertError do
      MessageBox( 0, 'Eintrag ist keine Zahl!','ERROR',16);
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Stringgrid1.RowCount := 1;
end;

tobiasw 24. Dez 2004 12:30

Re: zahlen in stringgrid speichern
 
wie kann ich jetzt die Zahlen noch sortieren lassen in auf, und absteigender Reihenfolgen

Gruß

Joe24 24. Dez 2004 22:33

Re: zahlen in stringgrid speichern
 
Du kannst die Einträge der Spalte x mit StringGrid.Cols[ x] einer Instanz
von TStringList zuweisen, mit StringList.Sort sortieren und die sortierte
StringList wieder an StringGrid.Cols[ x] zuweisen. Das Ereignis
StringGrid.OnSetEditText kann dazu genutzt werden.



...ansonsten z.B. mit dem BubbleSort oder QuickSort Verfahren.
Informationen dazu findest du auch in der DP.

tobiasw 27. Dez 2004 10:14

Re: zahlen in stringgrid speichern
 
@joe24 das hast du mich falsch verstanden ich möchte das nicht mehr Zahlen als 10 eingegeben werden können


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:55 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