Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Stringgrid Text in den selektierten Zellen einfügen (https://www.delphipraxis.net/203902-stringgrid-text-den-selektierten-zellen-einfuegen.html)

Gandimann 5. Apr 2020 13:30

Stringgrid Text in den selektierten Zellen einfügen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo liebe Freunde,

kann jemand bitte mir erklären wie ich per Button Click Editfeld Text in Stringgrid in mehrere selektierte bzw. markierte Zellen (jeweils) einfügen kann.

Vielen Dank !

himitsu 5. Apr 2020 13:55

AW: Stringgrid Text in den selektierten Zellen einfügen
 
Du nimmst dir eine TGridRect-Variable, befüllst sie und weist sie dem StringGrid.Selection zu? :angle2:
Ups, den wirren Text bissl falsch verstanden.

Man kann mit einer/zwei Schleifen die Cells durchlaufen, welche in StringGrid.Selection angegeben sind.



Und wie kommt man bitte auf die saublöde schlaue Idee im OnPaint den Inhalt/Aufbau der Form/Komponente verändern zu wollen,
was wiederum ein OnPaint auslöst und mit etws Glück denjenigen mit einer Endlosschleige betraft?
-> OnResize und OnCreate (oder OnShow)

PS: Du hast einen Rechenfehler
SringGrid.ClientWidth macht das Rechnen einfacher, wenn man die Breite des Rahmens ignoriert. (und vielleicht auch noch die Breite des ScrollBalkens)

Gandimann 5. Apr 2020 15:18

AW: Stringgrid Text in den selektierten Zellen einfügen
 
Danke Himitsu,
für deine Hinweise. Ich bin zwar mit der Schleife etwas weiter gekommen sodass in jede Zelle Edit1.text eingefügt wird leider fehlt mir noch die Info wie ich mit Loop (Schleife) kontrollieren kann ob die Zelle selektiert ist sodass nur da eingefügt wird.

mein jetziger Code lautet:


procedure TForm1.Button1Click(Sender: TObject);
var
i:Integer;
begin
StringGrid1.FixedCols := 1;
StringGrid1.FixedRows := 1;

for i := 0 to ( (StringGrid1.ColCount-1) * (StringGrid1.RowCount-1)) do

StringGrid1.Cells[i mod (StringGrid1.ColCount - 1) + 1, i div (StringGrid1.ColCount - 1) + 1] := Edit1.Text;

end;

Gandimann 5. Apr 2020 15:50

AW: Stringgrid Text in den selektierten Zellen einfügen
 
Nevermind......

Ich hab's hingegriegt....

Vielen Dank

:thumb:


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