[Qt-interest] Qt4.4 QTextEdit size and viewport() size
Josh
jnfo-c at grauman.com
Sat Feb 7 02:34:16 CET 2009
Thanks for the reply Alex.
Unfortunately in my case I have the scrollBars set to AlwaysOff, so
maximum() always returns 0. I have a separate widget which I'm using to
scroll the QTextEdit, thus my dilemma of trying to find out the length of
the document in pixels...
Josh
> QTextEdit is derived from QAbstractScrollArea.
>> From QT documentation:
>>> QAbstractScrollArea is a low-level abstraction of a scrolling area.
>>> The area provides a central widget called the viewport, in which the
>>> contents of the area is to be scrolled (i.e, the visible parts of the
>>> contents are rendered in the viewport).
>
> In other words size of the widget (viewport), the same as size of
> QTextEdit is irrelevent to the size of the document. Viewport would
> never increase its size because you loaded a long document into
> QTextEdit. What happens, it is determined which part of the document
> should be visible and this part is renderered in the viewport.
>
> The size you are (probably) looking for, you can get from the scrollbars as:
>
> int h = verticalScrollBar()->maximum () - verticalScrollBar()->minimum();
>
> I believe this should represent the height of the document in the
> pixels, with rendering options (fonts, scale, etc) set for QTextEdit.
>
>
> Best regards,
> Alex Malyushytsky
>
>
> Hello,
>
> This should be simple but I can't figure it out. I have a QTextEdit with
> lots of text so that scrollbars appear. I'm trying to get the size of the
> widget that contains the text (for lack of a better description). I
> thought the viewport() function did this, but it only returns the size of
> the visible portion of the QTextEdit. The size of the QTextEdit itself
> likewise is only the size of the visible widget.
>
> So for example if you have a QTextEdit with many pages of text, the height
> of the widget I'm looking for should certainly be more than the number of
> pixels of the height of the screen, but both the QTextEdit's height()
> function and the viewport() height() function both return the number of
> pixels on the screen.
>
> Thoughts? Ultimately it would be nice not just to get the size of the
> underlying widget, but also a pointer to it itself. Thanks.
>
> Josh
More information about the Qt-interest-old
mailing list