[Qt-interest] Drawing rectangular

Samuel Rødal sroedal at trolltech.com
Mon Sep 21 12:29:05 CEST 2009


Yuvaraj R wrote:
> Hi
> 
>  I have overrrided the QTextBrowser class like
> 
> *text_browser.h*
> 
> 
> #ifndef TEXT_BROWSER_H
> 
> #define TEXT_BROWSER_H
> 
> #include <QTextBrowser>
> 
> #include <QPaintEvent>
> 
> class text_browser:public QTextBrowser
> 
> {
> 
> public:
> 
> text_browser(QWidget *parent=0);
> 
> void paintEvent(QPaintEvent *e);
> 
> };
> 
> #endif // TEXT_BROWSER_H
> 
> 
> *text_browser.cpp*
> 
> #include "text_browser.h"
> 
> #include <QMessageBox>
> 
> text_browser::text_browser(QWidget *parent):QTextBrowser(parent)
> 
> {
> 
> }
> 
> void text_browser::paintEvent(QPaintEvent *e)
> 
> {
> 
>               e->accept();
> 
> }
> 
> 
> 
> you told that call base class paint event to paint the text browser. 
> 
> any mistake is there in derived class of text_browser.
> 
> 
> Sorry  English is not  my first language .
> Thanks
> 
> Yuvaraj R

To call the base class paint event, your text browser class' paint event 
should look like this:

void text_browser::paintEvent(QPaintEvent *e)
{
	QTextBrowser::paintEvent(e);
	QPainter painter;
	painter.setPen(Qt::red);
	painter.drawRect(100,100,100,100);
}

I don't think calling accept() makes any difference for paint events.

--
Samuel



More information about the Qt-interest-old mailing list