Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
LCL
»
TStringGrid.getEnumerator
Free Pascal
Website
Downloads
Wiki
Documentation
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Documentation (RTL/FCL/LCL)
Bugtracker
CCR Bugs
IRC channel
GIT
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
Recent
Controlling the behavior ...
by
rvk
[
Today
at 08:31:48 am]
A "leisure" question on W...
by
Awkward
[
Today
at 07:59:12 am]
Free AI to use in local
by
Thaddy
[
Today
at 07:36:24 am]
Big Numbers Math
by
Thaddy
[
Today
at 07:22:49 am]
how to change the color f...
by
Thaddy
[
Today
at 07:14:33 am]
Parquet?
by
Thaddy
[
Today
at 07:11:17 am]
STARS and Regular POLYGON...
by
Boleeman
[
Today
at 06:41:41 am]
Offical launch of the 1 B...
by
Gustavo 'Gus' Carreno
[
Today
at 05:53:09 am]
Project fails on run but ...
by
jamie
[
Today
at 12:54:49 am]
Curling Pythagoras Tree: ...
by
Boleeman
[
Today
at 12:00:37 am]
Ribbon bar in Lazarus 3.2...
by
wp
[March 28, 2024, 11:29:17 pm]
how to search in rxmemory...
by
rcmz
[March 28, 2024, 10:19:54 pm]
Configure JCF messages
by
GordonFindlay
[March 28, 2024, 10:16:19 pm]
Poll: Watches and Display...
by
Martin_fr
[March 28, 2024, 10:15:08 pm]
Dialog ShowModal and an i...
by
d7_2_laz
[March 28, 2024, 09:51:39 pm]
JEDI error but unit compi...
by
Thaddy
[March 28, 2024, 09:30:33 pm]
Understanding and adjusti...
by
circular
[March 28, 2024, 09:09:56 pm]
Dynarray initialization p...
by
Thaddy
[March 28, 2024, 06:30:12 pm]
Zeos components. Had to c...
by
Fantablup
[March 28, 2024, 04:17:13 pm]
[SOLVED] Completion box s...
by
furious programming
[March 28, 2024, 04:12:26 pm]
[LAMW] How to create a ca...
by
af0815
[March 28, 2024, 03:48:16 pm]
Complex package installat...
by
wp
[March 28, 2024, 03:38:16 pm]
[SOLVED] Combined pointer...
by
CM630
[March 28, 2024, 02:48:41 pm]
Using KeyPress event, how...
by
Zvoni
[March 28, 2024, 02:24:42 pm]
a Unit problem?
by
Thaddy
[March 28, 2024, 01:56:12 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: TStringGrid.getEnumerator (Read 2158 times)
Relativity
Full Member
Posts: 103
TStringGrid.getEnumerator
«
on:
July 19, 2017, 02:38:56 pm »
I have a StringGrid made of three columns.
If I do StringGrid.getEnumerator I get a TComponentEnumerator that can give pointers to elements in the list, for example the pointer to the current element.
The question is: what kind of objects do these pointers point to ? Because in every row there are three Strings: one for every column. So do these pointers point to the string in the first column? Or to the three Strings appended to each other?
I don't understand.
Thanks in advance to anybody taking their time to explain me.
Logged
"How'm I gonna get through?"
-- Pet Shop Boys
taazz
Hero Member
Posts: 5368
Re: TStringGrid.getEnumerator
«
Reply #1 on:
July 19, 2017, 02:59:59 pm »
stringgrid has no specific enumerator that I know of, the one you stumbled upon is inherited from the TComponent and as far as I can see and I did not look hard enough, it has to do with the owner mechanism, it only returns component that it owns.
Logged
Good judgement is the result of experience … Experience is the result of bad judgement.
OS : Windows 7 64 bit
Laz: Lazarus 1.4.4 FPC 2.6.4 i386-win32-win32/win64
wp
Hero Member
Posts: 11858
Re: TStringGrid.getEnumerator
«
Reply #2 on:
July 19, 2017, 03:42:49 pm »
Depending on what you need the enumerator for you can write your own - see attached demo. It implements a TStringGridEnumerator which iterates through all cells and returns their content. Of course, you can modify it to scan only along a row, or along a column, or in reverse order - whatever you like.
My personal opinion: the elegance of writing
Code: Pascal
[Select]
[+]
[-]
for
s
in
StringGrid1
do
...
instead of
Code: Pascal
[Select]
[+]
[-]
for
r
:
=
0
to
StringGrid1
.
RowCount
-
1
do
for
c
:
=
0
to
StringGrid1
.
ColCount
-
1
do
begin
s
:
=
StringGrid1
.
Cells
[
c
,
r
]
;
...
end
;
is not worth the effort...
Logged
Relativity
Full Member
Posts: 103
Re: TStringGrid.getEnumerator
«
Reply #3 on:
July 20, 2017, 01:02:07 pm »
Thank you very much.
«
Last Edit: July 21, 2017, 01:37:02 pm by Relativity
»
Logged
"How'm I gonna get through?"
-- Pet Shop Boys
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
LCL
»
TStringGrid.getEnumerator
TinyPortal
© 2005-2018