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
Poll: Watches and Display...
by
440bx
[
Today
at 07:13:51 pm]
Lazarus for Windows on aa...
by
msintle
[
Today
at 06:42:18 pm]
InstallAware Using Lazaru...
by
marcov
[
Today
at 04:46:46 pm]
Who is Indy mattias?
by
paweld
[
Today
at 04:17:53 pm]
[solved] how to get class...
by
Joanna
[
Today
at 03:53:05 pm]
I just released a commerc...
by
BrassGear
[
Today
at 03:17:28 pm]
Does anyone know why thes...
by
Laksen
[
Today
at 03:04:14 pm]
Database standards OR Am ...
by
gidesa
[
Today
at 02:37:56 pm]
How to: create DLL file f...
by
TRon
[
Today
at 02:26:53 pm]
A fairly simple sound sol...
by
paweld
[
Today
at 01:46:11 pm]
Demoscene The Champs Crac...
by
KodeZwerg
[
Today
at 01:45:18 pm]
Access violation when ope...
by
Чебурашка
[
Today
at 12:27:34 pm]
Step-into the field sette...
by
Martin_fr
[
Today
at 11:31:48 am]
Access violation when re-...
by
Chris Osborne
[
Today
at 11:31:25 am]
AI, NLP and CAI: Text Gen...
by
Dzandaa
[
Today
at 11:03:26 am]
dwindows for Android
by
PierceNg
[
Today
at 10:54:44 am]
create system unit from s...
by
Laksen
[
Today
at 10:53:57 am]
[Solved] Find child contr...
by
Joanna
[
Today
at 09:53:43 am]
FpDebug unexpected Assemb...
by
Marc
[
Today
at 08:46:38 am]
Offical launch of the 1 B...
by
Handoko
[
Today
at 07:59:07 am]
Big Numbers Math
by
iLya2IK
[
Today
at 07:13:20 am]
BUG REPORT: Unable to gen...
by
dbannon
[
Today
at 06:29:49 am]
what to do if my target M...
by
Laksen
[
Today
at 12:49:12 am]
For-in loop over constant...
by
ASerge
[
Today
at 12:36:09 am]
Converting a string/index...
by
TRon
[April 18, 2024, 11:56:37 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: TStringGrid.getEnumerator (Read 2180 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: 11916
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