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
Generics - correct syntax
by
VisualLab
[
Today
at 01:32:11 pm]
Ho Ho Ho IntraWeb in Laza...
by
VisualLab
[
Today
at 01:28:20 pm]
How to: create DLL file f...
by
paule32
[
Today
at 01:23:18 pm]
FpDebug questions
by
440bx
[
Today
at 01:22:53 pm]
leetcode doesn’t support ...
by
codeninja
[
Today
at 01:16:43 pm]
Can function be used for ...
by
Joanna
[
Today
at 12:48:19 pm]
Parameter passing odditie...
by
Nitorami
[
Today
at 12:42:09 pm]
Access violation when ope...
by
Чебурашка
[
Today
at 12:14:30 pm]
Lazarus features in a non...
by
jollytall
[
Today
at 11:53:17 am]
Access violation when re-...
by
Chris Osborne
[
Today
at 11:43:49 am]
splitting an image
by
Dzandaa
[
Today
at 11:15:40 am]
how to tweek fpmake to co...
by
marcov
[
Today
at 10:35:11 am]
Why isn't TTIRadioGroup's...
by
egsuh
[
Today
at 08:09:35 am]
Lazarus for Windows on aa...
by
Wallaby
[April 23, 2024, 11:46:56 pm]
(Solved) TIndexedAVLTree ...
by
lainz
[April 23, 2024, 10:49:03 pm]
Demo Scene Picture sinwav...
by
KodeZwerg
[April 23, 2024, 10:26:21 pm]
fkInternalCalc
by
zraja
[April 23, 2024, 09:31:07 pm]
A fairly simple sound sol...
by
KodeZwerg
[April 23, 2024, 09:23:37 pm]
add new targets to make
by
marcov
[April 23, 2024, 08:38:42 pm]
Quirky windows
by
ASerge
[April 23, 2024, 07:07:16 pm]
[Request] Demo Scene Sub ...
by
Gigatron
[April 23, 2024, 06:29:39 pm]
Unlocking Files
by
KodeZwerg
[April 23, 2024, 06:03:08 pm]
[SOLVED] trunk bug for mi...
by
Key-Real
[April 23, 2024, 05:56:32 pm]
Demo Scene Bitmap Font Sc...
by
Gigatron
[April 23, 2024, 05:56:27 pm]
Compile/Convert Delphi pr...
by
Martin_fr
[April 23, 2024, 05:43:11 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: TStringGrid.getEnumerator (Read 2182 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: 11923
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