Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Listbox StringGrid vergleich! (https://www.delphipraxis.net/124804-listbox-stringgrid-vergleich.html)

thiagojonas 25. Nov 2008 15:15


Listbox StringGrid vergleich!
 
Hallo Leute,
mit folgendem Code vergeleiche eine Listbox mit einer StringGrid:

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var Txt2Find : String;
    Index   : Integer;

 function GetGrid2Index(Grid:TStringGrid;Txt2Find:String):Integer;
 var i : Integer;
 begin
  Result:=-1;
  with Grid do
   for i:=FixedRows to RowCount-1 do
    if (form11.flights_dg.Cells[0,i]= Txt2Find) then begin
     Result:=i;
     Break;
     end;
   end;

begin
  Txt2Find:= air_list.items[air_list.ItemIndex]; // Erhält den Wert von der markierten Zeile der Listbox, GEHT DAS SO ???
  Index  := GetGrid2Index(form11.flights_dg,Txt2Find);
  if Index > -1 then
   form11.flights_dg.Cells[6,Index] := FormatDateTime('hh:mm',now);

end;
Es wir leider kein Wert eingetragen, was mache ich falsch?

DeddyH 25. Nov 2008 15:19

Re: Listbox StringGrid vergleich!
 
Wieso übergibst Du das Grid als Parameter und vergleichst dann mit einem konstant vorgegebenen Grid?

thiagojonas 25. Nov 2008 15:30

Re: Listbox StringGrid vergleich!
 
Naja also ich habe vorher einen eintrag in die Stringgrid gemacht.

StringGrid Spalte(Name)

___________________________

Hans
Dieter
Peter



Listbox
___________________________

Hans
Dieter
Peter

Beim Klicken des Buttons soll die aktuelle Zeit in eine zweite Spalte in die StringGrid eingetragen werden.

also...

StringGrid Spalte(Name)

___________________________

Hans
Dieter ---------------------------------------- 20:01 -- Wenn ich halt in der Listbox Dieter auswähle
Peter


Beim vergleichen von zwei StringGrids würde ich für TxtFind folgendes einsetzten, und so gehts auch dann.
Delphi-Quellcode:
Txt2Find:=air_dg.Cells[0,air_dg.Row];

DeddyH 25. Nov 2008 15:34

Re: Listbox StringGrid vergleich!
 
Nochmal:
Zitat:

Delphi-Quellcode:
with Grid do //hier das übergebene Grid
   for i:=FixedRows to RowCount-1 do
    if (form11.flights_dg.Cells[0,i]= Txt2Find) then begin //und hier ein Grid auf Form11?

Sieht für mich sinnfrei aus.

thiagojonas 25. Nov 2008 15:45

Re: Listbox StringGrid vergleich!
 
Ich verstehe nicht was da sinnfrei, die funktion bewirkt, dass die Spalte der Stringgrid duchlaufen wird, und wenn de makierte Wert der Listbox dem Wert der StringGrid entspricht(die Wertt sind ja gleich), dann wir in der Zeile der StringGrid, wo dieser Wert gleich ist, die Zeit eingefügt.

DeddyH 25. Nov 2008 15:49

Re: Listbox StringGrid vergleich!
 
Delphi-Quellcode:
for i:=Grid.FixedRows to Grid.RowCount-1 do
    if (Grid.Cells[0,i]= Txt2Find) then begin
Wäre das so nicht sinnvoller? Sonst könntest Du Dir den Parameter auch sparen. Zu den Feinheiten komme ich jetzt nicht mehr, da gleich Feierabend. Ich kann aber nach 17:30 zu Hause nochmal nachsehen, was da evtl. schiefläuft.

thiagojonas 25. Nov 2008 15:54

Re: Listbox StringGrid vergleich!
 
Ja es wäre nicht so kompliziert, aber worum es mit geht, dass die makierte Zeile in der Listbox TxtFind zugeordnet wird. Und ich wollte fragen ob das uach so richtig ist, wie ich es gemacht habe, weil bei mir geht es nicht:-(. Danke:-)

DeddyH 25. Nov 2008 15:56

Re: Listbox StringGrid vergleich!
 
Ich schau nachher mal.

thiagojonas 25. Nov 2008 15:56

Re: Listbox StringGrid vergleich!
 
Thanx :-D

DeddyH 25. Nov 2008 15:59

Re: Listbox StringGrid vergleich!
 
Bis dahin kannst Du FixedRows und RowCount mal spaßeshalber in FixedCols und ColCount ändern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:10 Uhr.
Seite 1 von 2  1 2      

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