Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 9 of 9 total
Thread Grid column as multiline edit
Sat, Oct 14 2017 8:51 AMPermanent Link

Anthony

I have a grid attached to a dataset, one of the columns is a memo which contains text of various lengths some multiple lines. I have changed the GridColumn ControlType from Edit to MultiLineEdit which now tries to display the multiple lines, but the row height property is a global for all rows in the table, cropping most of the multi line entries.

Is there a way of displaying varying height rows in a grid, or an alternative solution to display like the various reply messages on this forum site?

Thanks, Anthony
Sat, Oct 14 2017 1:02 PMPermanent Link

Uli Becker

Anthony,

> Is there a way of displaying varying height rows in a grid, or an alternative solution to display like the various reply messages on this forum site?

No, that's not possible, at least for now.

The only way would be to use TBasicPanel components e.g. to simulate a
TGrid or to create a custom component.

Uli


Sat, Oct 14 2017 2:13 PMPermanent Link

Anthony

Thanks for the reply, I don't really understand how would I use a TBasicPanel for simulate a grid.

I'm assuming this wouldn't be dataset bound but I would create BasicPanels at runtime depending upon the number of lines in the memo field and number of rows?

Anthony
Sat, Oct 14 2017 4:41 PMPermanent Link

Uli Becker

> I'm assuming this wouldn't be dataset bound but I would create BasicPanels at runtime depending upon the number of lines in the memo field and number of rows?

Right. You would have to put a TLabel on the BasicPanels and use the
AutoSize properties of both TLabel and TBasicPanel to adjust the height.
It's the (quite) new autosize functionality of EWB which make things
like this much easier.

I'll see if I can put together a sample for you tomorrow.

Uli
Sun, Oct 15 2017 2:40 AMPermanent Link

Uli Becker

Anthony,

attached the sample project I promised.

Pay attention to the different Autosize- and Layout-properties of the
rows, columns and labels.

Uli



Attachments: SiimulateGrid.zip
Sun, Oct 15 2017 8:25 AMPermanent Link

Matthew Jones

I have a post on how I did this on my web site. Also I’ve posted here my
“formlist” component which I have since extended. It isn’t pretty but is
better fo larger numbers of items.

--
Matthew Jones
Sun, Oct 15 2017 10:05 AMPermanent Link

Anthony

That's excellent Uli, thank you for the sample. I'm sure I can learn and adapt to my requirements.

Matthew I found your formlist component https://www.elevatesoft.com/forums?action=view&category=ewb&id=ewb_components&page=1&msg=69#69

The demo looks very impressive but I'm getting an error when adding the component regarding a missing unit uFilterableItem.  Looking though the code it is more complex than I was wanting at this stage especially with the modified TListBox, but a useful reference.

I know this has been mentioned in the forums before but it would be great to have contributed code examples easily surfaced in the forums especially when they are so useful.
Mon, Oct 16 2017 3:30 AMPermanent Link

Uli Becker

Anthony,

just an important hint: if you create a number of controls at runtime,
you should always BeginUpdate and EndUpdate to get a much better
performance:

BeginUpdate;
try
   ...
finally
   EndUpdate;
end;

I forgot that in the sample code.

Uli


Mon, Oct 16 2017 4:21 AMPermanent Link

Matthew Jones

Anthony wrote:

>  Looking though the code it is more complex than I was wanting

Me too! The filterable item can probably be taken out, I shall have to look at it. The problem is that it gets quite complicated once it gets into virtual content, and also I made it work with invisible items so I can use it for a tree, and I don't really like it myself as a solution. But it works very well really.

--

Matthew Jones
Image