1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
#include "prison.h"
#include <QLineEdit>
#include <QPushButton>
#include "prison/BarcodeItem"
#include "prison/BarcodeWidget"
#include "prison/DataMatrixBarcode"
#include "prison/QRCodeBarcode"
#include <QHBoxLayout>
#include <QGraphicsScene>
#include <QGraphicsView>
#include <QGraphicsLinearLayout>
#include <QSplitter>
void main_window::data_changed() {
QString result = m_lineedit->text();
m_dmi->setData(result);
m_dmw->setData(result);
m_qri->setData(result);
m_qrw->setData(result);
m_nulli->setData(result);
m_nullw->setData(result);
}
main_window::main_window() {
QHBoxLayout* lay = new QHBoxLayout();
m_lineedit = new QLineEdit(this);
QPushButton* but = new QPushButton(this);
connect(but,SIGNAL(clicked()),SLOT(data_changed()));
lay->addWidget(m_lineedit);
lay->addWidget(but);
QVBoxLayout* mainlay = new QVBoxLayout();
m_dmw = new prison::BarcodeWidget(new prison::DataMatrixBarcode(),this);
m_qrw = new prison::BarcodeWidget(new prison::QRCodeBarcode(),this);
QGraphicsScene* scene = new QGraphicsScene(this);
m_dmi = new prison::BarcodeItem(new prison::DataMatrixBarcode());
m_qri = new prison::BarcodeItem(new prison::QRCodeBarcode());
m_nulli = new prison::BarcodeItem();
m_nullw = new prison::BarcodeWidget();
scene->addItem(m_dmi);
m_dmi->setPos(0,0);
scene->addItem(m_qri);
m_qri->setPos(200,200);
scene->addItem(m_nulli);
m_nulli->setPos(0,200);
prison::BarcodeItem* with_value = new prison::BarcodeItem();
with_value->setBarcode(new prison::QRCodeBarcode());
with_value->setData("hello");
scene->addItem(with_value);
with_value->setPos(200,0);
QGraphicsView* v = new QGraphicsView(this);
v->setScene(scene);
QSplitter* splitter = new QSplitter(Qt::Vertical);
splitter->addWidget(v);
splitter->addWidget(m_dmw);
splitter->addWidget(m_qrw);
splitter->addWidget(m_nullw);
mainlay->addLayout(lay);
mainlay->addWidget(splitter);
setLayout(mainlay);
}
#include "prison.moc"
|