MainWindow
::MainWindow( QWidget* p
){
l->setStyleSheet( "background: red;" );
lay->addWidget( l, 0, 0 );
l->setStyleSheet( "background: blue;" );
lay->addWidget( l, 0, 2 );
l->setStyleSheet( "background: green;" );
lay->addWidget( l, 2, 0 );
l->setStyleSheet( "background: yellow;" );
lay->addWidget( l, 2, 2 );
lay->addWidget( te, 1, 1 );
w->setLayout( lay );
this->setCentralWidget( w );
}
{
QPoint p
= te
->mapFromParent
( e
->pos
() );
this
->te
->setFixedSize
( QSize( p.
x(), p.
y() ) );
}
MainWindow::MainWindow( QWidget* p )
: QMainWindow( p )
{
QGridLayout* lay = new QGridLayout;
QLabel* l = NULL;
l = new QLabel( "test1" );
l->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
l->setStyleSheet( "background: red;" );
lay->addWidget( l, 0, 0 );
l = new QLabel( "test2" );
l->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
l->setStyleSheet( "background: blue;" );
lay->addWidget( l, 0, 2 );
l = new QLabel( "test3" );
l->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
l->setStyleSheet( "background: green;" );
lay->addWidget( l, 2, 0 );
l = new QLabel( "test4" );
l->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
l->setStyleSheet( "background: yellow;" );
lay->addWidget( l, 2, 2 );
te = new QTextEdit();
lay->addWidget( te, 1, 1 );
QWidget* w = new QWidget( this );
w->setLayout( lay );
this->setCentralWidget( w );
}
void MainWindow::mouseMoveEvent( QMouseEvent* e )
{
QPoint p = te->mapFromParent( e->pos() );
this->te->setFixedSize( QSize( p.x(), p.y() ) );
}
To copy to clipboard, switch view to plain text mode
Click LMB anythwere on the grey background and holding it move your mouse.
Bookmarks