Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Formatierung im StringGrid (https://www.delphipraxis.net/142253-formatierung-im-stringgrid.html)

Kunoishi 24. Okt 2009 16:15


Formatierung im StringGrid
 
Wie ist es mir möglich in meinem StringGrid
Delphi-Quellcode:
procedure TArtikelerfassungForm.SetzeArtikelStringGrid;
begin                                          
  ArtikelStringGrid.rowCount := 2;            
  ArtikelStringGrid.colCount := 7;            
  ArtikelStringGrid.cells[0,0] := 'Nr';      
  ArtikelStringGrid.cells[1,0] := 'Abteilung';
  ArtikelStringGrid.cells[2,0] := 'Abteilung Nr.';
  ArtikelStringGrid.cells[3,0] := 'Artikel';
  ArtikelStringGrid.cells[4,0] := 'Preis';    
  ArtikelStringGrid.cells[5,0] := 'Anzahl';  
  ArtikelStringGrid.cells[6,0] := 'Gesammt';
end;
die Angaben in meinen Spalten von Preis bzw. Gesammt mit dem Eurozeichen zu versehen in der Form "10,00 €" :gruebel:

Luckie 24. Okt 2009 16:19

Re: Formatierung im StringGrid
 
Klar warum nicht. Einfach an den Wert anhängen.

Kunoishi 24. Okt 2009 16:21

Re: Formatierung im StringGrid
 
an den wert anhängen ?
ich stehe anscheint auf der Leiter oder sehe den Wald vor lauter Bäumen nicht :?:

fkerber 24. Okt 2009 16:23

Re: Formatierung im StringGrid
 
Hi!

Wie sieht denn die Stelle aus, an der du die Werte in dein Stringgrid bekommst?
Oder handelt es sich um Benutzereingaben?


Grüße, Frederic

Kunoishi 24. Okt 2009 16:34

Re: Formatierung im StringGrid
 
ich habe das so gemacht
Delphi-Quellcode:
procedure TArtikelerfassungForm.editEinzelpreisExit(Sender: TObject);
var l,b,u:real;
begin
 Try
  l:=strtofloat(EditArtikelAnzahl.text);
 Except
   Showmessage('Eingabefehler bei der Artikelanzahl !');
   l := 0;
   EditArtikelAnzahl.Text := '0';
 end;
 Try
  b:=strtofloat(EditEinzelPreis.text);
 Except
   Showmessage('Eingabefehler bei dem Artikeleinzelpreis !');
   b := 0;
   EditEinzelpreis.Text := '0';
 end;
  u:=l*b;
  EditGesamtPreis.Text := FloattostrF (u,ffGeneral,6,0);
  EditAbteilung.setfocus
end;
ich hoffe ihr meint das :gruebel:

fkerber 24. Okt 2009 16:37

Re: Formatierung im StringGrid
 
Hi!

Nein, noch nicht so ganz.
Ich sehe hier noch keine Verbindung zum Stringgrid?
Also wie kommen die Daten aus den Edits in das Stringgrid?


Grüße, Frederic

Kunoishi 24. Okt 2009 16:43

Re: Formatierung im StringGrid
 
das müßte das hier sein
Delphi-Quellcode:
procedure TArtikelerfassungForm.Button5Click(Sender: TObject);
var s:string;
begin
  s := EditAbteilung.Text;
  if length(s)=0 then
  begin
    showmessage('Fehlerhafte Eingabe in der Abteilung');
    EditAbteilung.setfocus;
    exit;
  end;

  s := EditAbteilungNr.Text;
  if length(s)=0 then
  begin
    showmessage('Fehlerhafte Eingabe zur Abteilung-Nr');
    EditAbteilungNr.setfocus;
    exit;
  end;

  s := EditArtikelBezeichnung.Text;
  if length(s)=0 then
  begin
    showmessage('Fehlerhafte Eingabe zum Artikel');
    EditArtikelBezeichnung.setfocus;
    exit;
  end;

  s := EditArtikelAnzahl.Text;
  if length(s)=0 then
  begin
    showmessage('Fehlerhafte Eingabe Mänge der Einzelnen Artikel');
    EditArtikelAnzahl.setfocus;
    exit;
  end;

  s := EditEinzelpreis.Text;
  if length(s)=0 then
  begin
    showmessage('Fehlerhafte Eingabe Mänge der Einzelnen Artikel');
    EditEinzelpreis.setfocus;
    exit;
  end;

  if EditVerbleibWare.ItemIndex = 0 then
  begin
    showmessage('Fehlerhafte Eingabe zum Verbleib der Ware');
    EditVerbleibWare.setfocus;
    exit;
  end;

  Rec.AbteilungName := EditAbteilung.Text;
  Rec.AbteilungNr := EditAbteilungNr.Text;
  Rec.Artikel := EditArtikelBezeichnung.Text;
  Rec.ArtikelAnzahl := EditArtikelAnzahl.Text;
  Rec.ArtikelWert := EditEinzelpreis.Text;
  Rec.ArtikelGesamtpreis := EditGesamtpreis.Text;
  Rec.Fremdobjekt := EditFremdobjekt.Text;
  result := true;
  Rec := rec;
  Artikel.add(Rec);
  Artikel.Show(ArtikelStringGrid);
    InitArtikelerfassungRec(Rec);
    init(Rec);

Kunoishi 24. Okt 2009 16:47

Re: Formatierung im StringGrid
 
oder der eintrag vom recorder
Delphi-Quellcode:
procedure  CArtikelerfassung.Show(ArtikelGrid:TStringGrid);
var i:integer;
    pRec:pArtikelerfassungRec;
begin
  if Artikel.Count = 0 then
  begin
    ArtikelGrid.RowCount := 2;
    ArtikelGrid.cells[0,1] := '-';
    ArtikelGrid.cells[1,1] := '-';
    ArtikelGrid.cells[2,1] := '-';
    ArtikelGrid.cells[3,1] := '-';
    ArtikelGrid.cells[4,1] := '-';
  end
  else
  begin
    ArtikelGrid.RowCount := Artikel.Count+1;
    for i:=0 to Artikel.Count-1 do
    begin
      pRec := Artikel.Items[i];
      ArtikelGrid.cells[0,i+1] := IntToStr(i+1);
      ArtikelGrid.cells[1,i+1] := pRec^.AbteilungName;
      ArtikelGrid.cells[2,i+1] := pRec^.AbteilungNr;
      ArtikelGrid.cells[3,i+1] := pRec^.Artikel;
      ArtikelGrid.cells[4,i+1] := pRec^.ArtikelWert;
    end;
  end;
end;

fkerber 24. Okt 2009 16:53

Re: Formatierung im StringGrid
 
Hi!

Wenn du deinen Beiträgen noch etwas hinzufügen willst, dann tue das bitte durch Editieren deines bestehenden Beitrages.

Aber ja, das letztere war in etwa das, was ich meinte...

Du könntest z.B. die letzte Zeile so ändern:


Delphi-Quellcode:
ArtikelGrid.cells[4,i+1] := pRec^.ArtikelWert+ " €";

Wenn ich dich richtig verstanden habe, sollte es das tun.


Grüße, Frederic

Kunoishi 24. Okt 2009 16:56

Re: Formatierung im StringGrid
 
jups was lange w. wird gut :bounce2: :bounce2:
danke jups das war es

danke

Kunoishi 24. Okt 2009 17:20

Re: Formatierung im StringGrid
 
bei der Änderung zeigt er mir an
"Ungüliges Zeichen in der Eingabedatei:"" [$22]"

was kann das den jetzt noch sein? :gruebel:

fkerber 24. Okt 2009 17:24

Re: Formatierung im StringGrid
 
Hi!

Versuche es mal mit

Delphi-Quellcode:
ArtikelGrid.cells[4,i+1] := pRec^.ArtikelWert+ " "+#128;
(ungetestet, da grad kein Delphi zur Hand)


Grüße, Frederic

Kunoishi 24. Okt 2009 17:32

Re: Formatierung im StringGrid
 
er bleibt auch hier in den Anführungszeichen stehen mit der gleichen Fehlermeldung

fkerber 24. Okt 2009 17:36

Re: Formatierung im StringGrid
 
Hi!

Vllt. ist mein Delphi einfach zu sehr eingerostet.
Probier es mal mit ' statt "...


Grüße, Frederic

Kunoishi 24. Okt 2009 17:39

Re: Formatierung im StringGrid
 
oder mein Delphi zu schlecht :angel2:
das letzte war die Lösung

nochmals danke
ich hoffe, dass ich das hier auch mal begreifen werde.
in diesem Sinne
mfg


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