AGB  ·  Datenschutz  ·  Impressum  







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

Listbox mit StrinGrid vergleichen!?

Ein Thema von RX3 · begonnen am 27. Jun 2005 · letzter Beitrag vom 29. Jun 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#11

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 09:44
Hallo,

wenn ich dein Vorhaben richtig verstanden habe, ist der Ansatz von leddl schon mal gut.
Es sind aber noch ein paar Fehler drin
Delphi-Quellcode:
for i := 0 To ListBox1.Items.Count - 1 Do
  for x := 0 To StringGrid1.ColCount - 1 Do
    //[Col,Row] hier wird nur auf die Col 0 zugegriffen
    If ListBox1.Items[i] = StringGrid1.Cells[0,x] Then //-->[x,0]
    begin
      vZeile := '';
      for y := 0 To StringGrid1.RowCount - 1 Do
      begin
         //***************************************************
         if Edit2.Text = 'TABthen //wird bei jeder Leseschleife aufgerufen
           vTrennzAus := chr(vk_tab) //Edit2 ändert sich doch nicht
         else //also vor die Schleifen setzen
           vTrennzAus := Edit2.Text;
         //**************************************************
         //hier wird auf i=ListBox.Items und x= StringGrid.Cols zugegriffen
         vZeile := vZeile + StringGrid1.Cells[i,x] + vTrennzAus;//-->[x,y]
      end;
      memo1.Lines.Add(vZeile);
    end;
änder das mal entsprechend der Kommentare ab, dann funktioniert es.
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#12

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 11:22
Da sieht man wieder, was bei Zeitdruck passiert. Natürlich muß das mit dem Edit vor die Schleifen. Das hab ich in der letzten Minute gerade noch per Copy&Paste eingefügt. Ebenso das mit i. Das is mir ja vorher bei seinem Code auch aufgefallen. Nur sollte man das dann im eigenen Code nach dem Kopieren auch ändern.
Was [x,y] und [y,x] angeht: Da war ich mir nicht mehr sicher und konnte es wegen knapper Zeit auch nicht ausprobieren. Is es beim Stringgrid wirklich [x,y]? Ich hatte irgendwie im Kopf, daß es [y,x] war. Hab aber auch schon lange nichts intensives mehr mit nem StringGrid gemacht. Aber auf jeden Fall schön, daß es zumindest halbwegs richtig war.
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
RX3

Registriert seit: 2. Jun 2004
42 Beiträge
 
#13

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 13:55
@Leddl
wenn ich mir deinen Code anschaue erscheint mir das ganze schon logisch, aber es passiert absolut GAR NIX wenn ich den Button klicke!

@Lannes, dein Code funzt leider auch nich auch wenn ich ihn etwas abändere, es tut sich auch hier GAR NIX !

Zum Verständnis nochmal:
- Per Doppelklick Füge ich einen StringGridZelleninhalt in eine Listbox (in diesem Fall die Spaltenüberschrift, kann aber auch ne x-beliebige andere Zeile sein, is ja mal egal!)
- Wenn ich jetz den Button klicke soll der komplette Spalteninhalt, wo dieser Eintrag drin steht in das Memo geschrieben werden. (siehe Bildanhang)

Auf dem Bild sieht man dass es teilweise funktioniert, allerdings werden einie Einträge doppelt, dreifach und aufm Bild bspw "Preis pro Anzahl" und "Warengruppe" gar nicht ins Memo geschrieben...

Hoffe das ist jetz deutlich??
Miniaturansicht angehängter Grafiken
unbenannt_209.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#14

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 14:58
Also nachdem ich mir das gar nicht vorstellen konnte, hab ich das jetzt glatt mal ausprobiert. Und tata, es tut genauso, wie (ich verstanden habe, daß) es soll.
Delphi-Quellcode:
if Edit2.Text = 'TABthen
  vTrennzAus := chr(vk_tab)
else
  vTrennzAus := Edit2.Text;

for i := 0 To ListBox1.Items.Count - 1 Do
  for x := 1 To StringGrid1.ColCount - 1 Do
    If ListBox1.Items[i] = StringGrid1.Cells[x,1] Then
    begin
      vZeile := '';
      for y := 1 To StringGrid1.RowCount - 1 Do
      begin
         vZeile := vZeile + StringGrid1.Cells[x,y] + vTrennzAus;
      end;
      memo1.Lines.Add(vZeile);
    end;
Dadurch werden mir die Spalten, deren Überschriften in der ListBox stehen, ins Memo eingefügt... Und genau das wolltest du ja. Oder hab ich das jetzt doch wieder falsch verstanden? Also "nichts" passiert da auf jeden Fall nicht.

//Edit:
Ach, jetzt wird mir klar, was das Problem ist. Du hast dein StringGrid ja komplett umgestellt. Für Spaltenüberschriften gibts ja im Normalfall die FixedColumns. Damit (oder zumindest mit der ersten Reihe) haben wir gerechnet. Da du aber praktischerweise die erste Spalte und Zeile leergelassen hast, mußt du logischerweise die x- und y-Wert noch um 1 erhöhen. Ich hab das jetzt schonmal im Quellcode oben angepasst. So sollte es auch bei deinem StringGrid funktionieren... Jupp, tut!
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
RX3

Registriert seit: 2. Jun 2004
42 Beiträge
 
#15

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 15:12
Zitat von leddl:
//Edit:
Ach, jetzt wird mir klar, was das Problem ist. Du hast dein StringGrid ja komplett umgestellt. Für Spaltenüberschriften gibts ja im Normalfall die FixedColumns. Damit (oder zumindest mit der ersten Reihe) haben wir gerechnet. Da du aber praktischerweise die erste Spalte und Zeile leergelassen hast, mußt du logischerweise die x- und y-Wert noch um 1 erhöhen. Ich hab das jetzt schonmal im Quellcode oben angepasst. So sollte es auch bei deinem StringGrid funktionieren... Jupp, tut!

Alter vielen Dank, ab heute nenn ich dich Delphi-Gott oder so, sag mir wo du wohnst ich spendier dir mal nen Kasten Bier!
Meine fresse ey wieso komm ich auf so nen scheiss denn niemals von alleine!??

Danke dir nochmals du hast mir praktisch soeben das Leben gerettet

P.S.: gibst du mir deine ICQ#? Kann dich evtl in zukunft öfter gebrauchen!?
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 16:01
Zitat von RX3:
Alter vielen Dank, ab heute nenn ich dich Delphi-Gott oder so, sag mir wo du wohnst ich spendier dir mal nen Kasten Bier!
Ach was, is doch selbstverständlich. Bin ja auch froh, wenn mir mal jemand bei nem Problem hilft.
Zitat von RX3:
Meine fresse ey wieso komm ich auf so nen scheiss denn niemals von alleine!??
Tja, ohne dein Bild wär ich da au net drauf gekommen.
Zitat von RX3:
P.S.: gibst du mir deine ICQ#? Kann dich evtl in zukunft öfter gebrauchen!?
ICQ geb ich im Normalfall ungern raus. Bin aber schließlich auch immer hier im Forum erreichbar. Und hier hilft ne Problemlösung auch anderen.
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
RX3

Registriert seit: 2. Jun 2004
42 Beiträge
 
#17

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 16:15
Trotzdem nochmal danke für Alles !!
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#18

Re: Listbox mit StrinGrid vergleichen!?

  Alt 29. Jun 2005, 19:55
Hallo,
Zitat von RX3:
@Lannes, dein Code funzt leider auch nich auch wenn ich ihn etwas abändere, es tut sich auch hier GAR NIX !
Verstanden hast Du den Code aber nicht
Ich trink aber trotzdem 'ne Flasche Bier mit
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  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 11:34 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