QT – Brincadeiras com Widgets

Sem pretensões de maior, este primeiro exemplo apenas permite lançar uma série de elementos gráficos (widgets) de forma completamente desorganizada. Experimentem.

#include <QApplication>
#include <QPushButton>
#include <QLabel>
#include <QSlider>
#include <QSpinBox>
#include <QTimeEdit>

int main(int argc, char *argv[]){
	QApplication janela(argc, argv);
	QPushButton *hellopushbutton = new QPushButton("Hello PushtButon!");
	QLabel *texto = new QLabel("Hello Label!");
	QSlider *sliderhorizontal = new QSlider(Qt::Horizontal);
	QSlider *slidervertical = new QSlider(Qt::Vertical);
	QSpinBox *spinbox = new QSpinBox;
	QTimeEdit *hora = new QTimeEdit;

	hellopushbutton->show();
	texto->show();
	sliderhorizontal->show();
	slidervertical->show();
	spinbox->show();
	hora->show();

	return janela.exec();
}

Como arrumar isto tudo?

Uma possibilidade seria criarmos uma aplicação que utiliza o seu próprio layout personalizado.

Vejam o exemplo.

#include <QApplication>
#include <QPushButton>
#include <QLabel>
#include <QSlider>
#include <QSpinBox>
#include <QTimeEdit>
#include <QHBoxLayout>

int main(int argc, char *argv[]){
	QApplication app(argc, argv);
	QWidget *janela = new QWidget;
	QPushButton *hellopushbutton = new QPushButton("Hello PushtButon!");
	QLabel *texto = new QLabel("Hello Label!");
	QSlider *sliderhorizontal = new QSlider(Qt::Horizontal);
	QSlider *slidervertical = new QSlider(Qt::Vertical);
	QSpinBox *spinbox = new QSpinBox;
	QTimeEdit *hora = new QTimeEdit;
	QHBoxLayout *linha = new QHBoxLayout;

	linha->addWidget(hellopushbutton);
	linha->addWidget(texto);
	linha->addWidget(sliderhorizontal);
	linha->addWidget(slidervertical);
	linha->addWidget(spinbox);
	linha->addWidget(hora);	

	janela->setLayout(linha);
	janela->show();
	return app.exec();
}

Já tem melhor aspecto não?

Anúncios

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s