#!/usr/bin/perl -w
$f
= new QGroupBox;
$f
->setFrameStyle(
$Frame
{Panel} |
$Frame
{Sunken});
$gm
= new QBoxLayout(
$f
,
$Direction
{BottomToTop}, 5);
$b1
= new QBoxLayout(
$Direction
{RightToLeft});
$gm
->addLayout(
$b1
, 10);
for
(
my
$i
= 0;
$i
< 4;
$i
++) {
my
$lab
= new QLabel(
$f
)->setImmortal;
$lab
->setText(
"Test $i"
);
$lab
->adjustSize();
$lab
->setMinimumSize(
$lab
->size());
$lab
->setFrameStyle(
$Frame
{Panel} |
$Frame
{Plain});
$lab
->setAlignment(
$Align
{Top} |
$Align
{HCenter});
$lab
->setBackgroundColor(
$yellow
);
$lab
->setMaximumSize(150, 200);
$b1
->addWidget(
$lab
, 20);
}
$qb
= new QPushButton(
'Quit'
,
$f
);
$qApp
->
connect
(
$qb
,
'clicked()'
,
'quit()'
);
$qb
->setFixedSize(
$qb
->size());
$b1
->addWidget(
$qb
, 0,
$Align
{Top});
$large
= new QLabel(
$f
);
$large
->setText(
"This is supposed to be a large window\n you know."
);
$large
->adjustSize();
$large
->setMinimumSize(
$large
->size());
$large
->setFrameStyle(
$Frame
{Panel} |
$Frame
{Plain});
$large
->setAlignment(
$Align
{Center});
$large
->setBackgroundColor(
$white
);
$b2
= new QBoxLayout(
$Direction
{LeftToRight});
$gm
->addLayout(
$b2
, 50);
$b2
->addWidget(
$large
, 100);
{
my
$s
= new QLabel(
$f
)->setImmortal;
$s
->setMaximumSize(150, 150);
$s
->setText(
"This\n is\n supposed\n to be\n centered\n relatively."
);
$s
->adjustSize();
$s
->setMinimumSize(
$s
->size());
$s
->setFrameStyle(
$Frame
{Panel} |
$Frame
{Plain});
$s
->setAlignment(
$Align
{Center});
$s
->setBackgroundColor(
$cyan
);
$b2
->addWidget(
$s
, 10,
$Align
{Center});
}
{
my
$s
= new QLabel(
$f
)->setImmortal;
$s
->setMaximumSize(
$QLayout::unlimited
, 50);
$s
->setText(
'This is a widget inside the outermost box'
);
$s
->adjustSize();
$s
->setMinimumSize(
$s
->width(),
$s
->height());
$s
->setFrameStyle(
$Frame
{Panel} |
$Frame
{Plain});
$s
->setAlignment(
$Align
{Center});
$s
->setBackgroundColor(
$red
);
$gm
->addWidget(
$s
, 1);
}
$gm
->activate();
$f
->show();
$qApp
->setMainWidget(
$f
);
$qApp
->
exec
();