夸脱乱翻书-旋转
跳转到大纲码云
QT乱翻书-Spin
#ifndef WIDGET_H
#定义WIDGET_H
#包含QWidget
命名空间Ui {
类小部件
}
类Widget :公共QWidget
{
Q_OBJECT
公众号:
显式widget(QWidget * parent=0);
~ Widget();
专用插槽3360
void on _ btnCal _ clicked();//计算按键已单击()响应
void on _ btnDec _ clicked();//读十进制数再用其他进制显示的按键的已单击()响应
void on _ btnBin _ clicked();//读二进制数再用其他进制显示的按键的已单击()响应
void on _ btnHex _ clicked();//读十六进制数再用其他进制显示的按键的已单击()响应
私人:
Ui:Widget * ui
};
#endif //WIDGET_H
/********************************************************************************
**通过读取用户界面文件widget.ui '生成表单
**
**由: Qt用户界面编译器5.9.1版创建
**
**警告!重新编译用户界面文件时,此文件中所做的所有更改都将丢失!
********************************************************************************/
#ifndef UI_WIDGET_H
#定义UI_WIDGET_H
#包含QtCore/QVariant
#包含QtWidgets/qaaction
#包含QtWidgets/qaapplication
#包含QtWidgets/QButtonGroup
#包含QtWidgets/QDoubleSpinBox
#包含QtWidgets/QGridLayout
#包含QtWidgets/QHeaderView
#包含QtWidgets/QLabel
#包含QtWidgets/qbutton
#包含QtWidgets/QSpacerItem
#包含QtWidgets/QSpinBox
#包含QtWidgets/QVBoxLayout
#包含QtWidgets/QWidget
QT _ BEgin _ NAME
类Ui_Widget
{
公众号:
QVBoxLayout *垂直布局;
QGridLayout * gridLayout
QLabel * label _ 3;
QDoubleSpinBox * spinTotal
QSpinBox * spinNum
QDoubleSpinBox * spinPrice
QLabel * label _ 2;
QLabel *标签;
QPushButton * btnCal
QSpacerItem *垂直空间
QGridLayout * gridLayout _ 2;
QLabel * label _ 6;
QLabel * label _ 7;
QPushButton * btnBin
QLabel * label _ 8;
QPushButton * btnDec
QPushButton * btnHex
qspace ritem * horizontalSpacer _ 2;
QSpinBox * spinDec
QSpinBox * spinBin
QSpinBox * spinHex
void setupUi(QWidget *Widget)
{
if (Widget-objectName().isEmpty())
Widget-setObjectName(QStringLiteral(' Widget '));
小部件-调整大小(303,172);
QFont字体;
字体。setfamily(来自utf8的qstring :3360(\ 345 \ 256 \ 213 \ 344 \ 275 \ 223’);
丰族
t.setPointSize(10);
Widget-setFont(font);
verticalLayout = new QVBoxLayout(Widget);
verticalLayout-setSpacing(6);
verticalLayout-setContentsMargins(11, 11, 11, 11);
verticalLayout-setObjectName(QStringLiteral("verticalLayout"));
gridLayout = new QGridLayout();
gridLayout-setSpacing(6);
gridLayout-setObjectName(QStringLiteral("gridLayout"));
label_3 = new QLabel(Widget);
label_3-setObjectName(QStringLiteral("label_3"));
label_3-setAlignment(Qt::AlignCenter);
gridLayout-addWidget(label_3, 1, 2, 1, 1);
spinTotal = new QDoubleSpinBox(Widget);
spinTotal-setObjectName(QStringLiteral("spinTotal"));
spinTotal-setMaximum(100000);
gridLayout-addWidget(spinTotal, 1, 3, 1, 1);
spinNum = new QSpinBox(Widget);
spinNum-setObjectName(QStringLiteral("spinNum"));
spinNum-setFrame(true);
spinNum-setButtonSymbols(QAbstractSpinBox::UpDownArrows);
spinNum-setProperty("showGroupSeparator", QVariant(false));
spinNum-setMaximum(1000);
spinNum-setValue(4);
gridLayout-addWidget(spinNum, 0, 1, 1, 1);
spinPrice = new QDoubleSpinBox(Widget);
spinPrice-setObjectName(QStringLiteral("spinPrice"));
spinPrice-setMinimumSize(QSize(90, 0));
spinPrice-setMaximum(10000);
spinPrice-setValue(12.43);
gridLayout-addWidget(spinPrice, 0, 3, 1, 1);
label_2 = new QLabel(Widget);
label_2-setObjectName(QStringLiteral("label_2"));
label_2-setAlignment(Qt::AlignCenter);
gridLayout-addWidget(label_2, 0, 2, 1, 1);
label = new QLabel(Widget);
label-setObjectName(QStringLiteral("label"));
label-setAlignment(Qt::AlignCenter);
gridLayout-addWidget(label, 0, 0, 1, 1);
btnCal = new QPushButton(Widget);
btnCal-setObjectName(QStringLiteral("btnCal"));
gridLayout-addWidget(btnCal, 1, 1, 1, 1);
verticalLayout-addLayout(gridLayout);
verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
verticalLayout-addItem(verticalSpacer);
gridLayout_2 = new QGridLayout();
gridLayout_2-setSpacing(6);
gridLayout_2-setObjectName(QStringLiteral("gridLayout_2"));
label_6 = new QLabel(Widget);
label_6-setObjectName(QStringLiteral("label_6"));
label_6-setMinimumSize(QSize(0, 0));
label_6-setAlignment(Qt::AlignCenter);
gridLayout_2-addWidget(label_6, 0, 0, 1, 1);
label_7 = new QLabel(Widget);
label_7-setObjectName(QStringLiteral("label_7"));
label_7-setAlignment(Qt::AlignCenter);
gridLayout_2-addWidget(label_7, 1, 0, 1, 1);
btnBin = new QPushButton(Widget);
btnBin-setObjectName(QStringLiteral("btnBin"));
gridLayout_2-addWidget(btnBin, 1, 3, 1, 1);
label_8 = new QLabel(Widget);
label_8-setObjectName(QStringLiteral("label_8"));
label_8-setAlignment(Qt::AlignCenter);
gridLayout_2-addWidget(label_8, 2, 0, 1, 1);
btnDec = new QPushButton(Widget);
btnDec-setObjectName(QStringLiteral("btnDec"));
gridLayout_2-addWidget(btnDec, 0, 3, 1, 1);
btnHex = new QPushButton(Widget);
btnHex-setObjectName(QStringLiteral("btnHex"));
gridLayout_2-addWidget(btnHex, 2, 3, 1, 1);
horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
gridLayout_2-addItem(horizontalSpacer_2, 1, 2, 1, 1);
spinDec = new QSpinBox(Widget);
spinDec-setObjectName(QStringLiteral("spinDec"));
spinDec-setMinimumSize(QSize(100, 0));
spinDec-setMaximum(255);
spinDec-setValue(12);
gridLayout_2-addWidget(spinDec, 0, 1, 1, 1);
spinBin = new QSpinBox(Widget);
spinBin-setObjectName(QStringLiteral("spinBin"));
spinBin-setMaximum(255);
spinBin-setDisplayIntegerBase(2);
gridLayout_2-addWidget(spinBin, 1, 1, 1, 1);
spinHex = new QSpinBox(Widget);
spinHex-setObjectName(QStringLiteral("spinHex"));
spinHex-setMaximum(255);
spinHex-setValue(12);
spinHex-setDisplayIntegerBase(16);
gridLayout_2-addWidget(spinHex, 2, 1, 1, 1);
verticalLayout-addLayout(gridLayout_2);
retranslateUi(Widget);
QMetaObject::connectSlotsByName(Widget);
} // setupUi
void retranslateUi(QWidget *Widget)
{
Widget-setWindowTitle(QApplication::translate("Widget", "SpinBox\346\265\213\350\257\225", Q_NULLPTR));
label_3-setText(QApplication::translate("Widget", "\346\200\273 \344\273\267", Q_NULLPTR));
spinTotal-setPrefix(QApplication::translate("Widget", "$ ", Q_NULLPTR));
spinNum-setSuffix(QApplication::translate("Widget", " kg", Q_NULLPTR));
spinPrice-setPrefix(QApplication::translate("Widget", "$ ", Q_NULLPTR));
label_2-setText(QApplication::translate("Widget", "\345\215\225 \344\273\267", Q_NULLPTR));
label-setText(QApplication::translate("Widget", "\346\225\260 \351\207\217", Q_NULLPTR));
btnCal-setText(QApplication::translate("Widget", "\350\256\241\347\256\227", Q_NULLPTR));
label_6-setText(QApplication::translate("Widget", "\345\215\201 \350\277\233 \345\210\266", Q_NULLPTR));
label_7-setText(QApplication::translate("Widget", "\344\272\214 \350\277\233 \345\210\266", Q_NULLPTR));
btnBin-setText(QApplication::translate("Widget", "\350\275\254\346\215\242\344\270\272\345\205\266\344\273\226\350\277\233\345\210\266", Q_NULLPTR));
label_8-setText(QApplication::translate("Widget", "\345\215\201\345\205\255\350\277\233\345\210\266", Q_NULLPTR));
btnDec-setText(QApplication::translate("Widget", "\350\275\254\346\215\242\344\270\272\345\205\266\344\273\226\350\277\233\345\210\266", Q_NULLPTR));
btnHex-setText(QApplication::translate("Widget", "\350\275\254\346\215\242\344\270\272\345\205\266\344\273\226\350\277\233\345\210\266", Q_NULLPTR));
spinDec-setSuffix(QString());
spinDec-setPrefix(QApplication::translate("Widget", "Dec ", Q_NULLPTR));
spinBin-setPrefix(QApplication::translate("Widget", "Bin ", Q_NULLPTR));
spinHex-setPrefix(QApplication::translate("Widget", "Hex ", Q_NULLPTR));
} // retranslateUi
};
namespace Ui {
class Widget: public Ui_Widget {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_WIDGET_H
#include "widget.h" #include QApplication int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); return a.exec(); }
#include "widget.h" #include "ui_widget.h" #include QString Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui-setupUi(this); //“数量”和“单价”两个SpinBox的valueChanged()信号与on_btnCal_clicked()槽关联 QObject::connect(ui-spinNum,SIGNAL(valueChanged(int)),this,SLOT(on_btnCal_clicked())); // QObject::connect(ui-spinPrice,SIGNAL(valueChanged(double)),this,SLOT(on_btnCal_clicked())); QObject::connect(ui-spinDec,SIGNAL(valueChanged(int)), this,SLOT(on_btnDec_clicked()));//spinDec 十进制显示的SpinBox QObject::connect(ui-spinBin,SIGNAL(valueChanged(int)), this,SLOT(on_btnBin_clicked()));//spinBin 二进制显示的SpinBox QObject::connect(ui-spinHex,SIGNAL(valueChanged(int)), this,SLOT(on_btnHex_clicked()));//spinHex 十六进制显示的SpinBox } Widget::~Widget() { delete ui; } void Widget::on_btnCal_clicked() { //计算按键 int num=ui-spinNum-value(); //读取数量,直接是整数 float price=ui-spinPrice-value();//读取单价,直接是浮点数 float total=num*price;//相乘计算 ui-spinTotal-setValue(total); //直接显示浮点数 } void Widget::on_btnDec_clicked() { //读取十进制,以其他进制显示 int val; val=ui-spinDec-value();//读取十进制数 ui-spinBin-setValue(val); //设置数值即可,自动以二进制显示 ui-spinHex-setValue(val); //设置数值即可,自动以十六进制显示 } void Widget::on_btnBin_clicked() { //读取二进制,以其他进制显示 int val=ui-spinBin-value();//读取spinBin里的二进制数,得到整数 ui-spinDec-setValue(val);//设置数值即可,自动以十进制显示 ui-spinHex-setValue(val);//设置数值即可,自动以十六进制显示 } void Widget::on_btnHex_clicked() { //读取十六进制,以其他进制显示 int val; val=ui-spinHex-value();//读取 spinHex 里的十六进制数,得到整数 ui-spinDec-setValue(val);//设置数值即可,自动以十进制显示 ui-spinBin-setValue(val);//设置数值即可,自动以二进制显示 }
xml version="1.0" encoding="UTF-8" ui version="4.0" classWidget/class widget class="QWidget" name="Widget" property name="geometry" rect x0/x y0/y width442/width height238/height /rect /property property name="font" font family宋体/family pointsize10/pointsize /font /property property name="windowTitle" stringSpinBox测试/string /property layout class="QVBoxLayout" name="verticalLayout" item layout class="QGridLayout" name="gridLayout" item row="1" column="2" widget class="QLabel" name="label_3" property name="text" string总 价/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="1" column="3" widget class="QDoubleSpinBox" name="spinTotal" property name="prefix" string$ /string /property property name="maximum" double100000.000000000000000/double /property /widget /item item row="0" column="1" widget class="QSpinBox" name="spinNum" property name="frame" booltrue/bool /property property name="buttonSymbols" enumQAbstractSpinBox::UpDownArrows/enum /property property name="showGroupSeparator" stdset="0" boolfalse/bool /property property name="suffix" string kg/string /property property name="maximum" number1000/number /property property name="value" number4/number /property /widget /item item row="0" column="3" widget class="QDoubleSpinBox" name="spinPrice" property name="minimumSize" size width90/width height0/height /size /property property name="prefix" string$ /string /property property name="maximum" double10000.000000000000000/double /property property name="value" double12.430000000000000/double /property /widget /item item row="0" column="2" widget class="QLabel" name="label_2" property name="text" string单 价/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="0" column="0" widget class="QLabel" name="label" property name="text" string数 量/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="1" column="1" widget class="QPushButton" name="btnCal" property name="text" string计算/string /property /widget /item /layout /item item spacer name="verticalSpacer" property name="orientation" enumQt::Vertical/enum /property property name="sizeHint" stdset="0" size width20/width height40/height /size /property /spacer /item item layout class="QGridLayout" name="gridLayout_2" item row="0" column="0" widget class="QLabel" name="label_6" property name="minimumSize" size width0/width height0/height /size /property property name="text" string十 进 制/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="1" column="0" widget class="QLabel" name="label_7" property name="text" string二 进 制/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="1" column="3" widget class="QPushButton" name="btnBin" property name="text" string转换为其他进制/string /property /widget /item item row="2" column="0" widget class="QLabel" name="label_8" property name="text" string十六进制/string /property property name="alignment" setQt::AlignCenter/set /property /widget /item item row="0" column="3" widget class="QPushButton" name="btnDec" property name="text" string转换为其他进制/string /property /widget /item item row="2" column="3" widget class="QPushButton" name="btnHex" property name="text" string转换为其他进制/string /property /widget /item item row="1" column="2" spacer name="horizontalSpacer_2" property name="orientation" enumQt::Horizontal/enum /property property name="sizeHint" stdset="0" size width40/width height20/height /size /property /spacer /item item row="0" column="1" widget class="QSpinBox" name="spinDec" property name="minimumSize" size width100/width height0/height /size /property property name="suffix" string/ /property property name="prefix" stringDec /string /property property name="maximum" number255/number /property property name="value" number12/number /property /widget /item item row="1" column="1" widget class="QSpinBox" name="spinBin" property name="prefix" stringBin /string /property property name="maximum" number255/number /property property name="displayIntegerBase" number2/number /property /widget /item item row="2" column="1" widget class="QSpinBox" name="spinHex" property name="prefix" stringHex /string /property property name="maximum" number255/number /property property name="value" number12/number /property property name="displayIntegerBase" number16/number /property /widget /item /layout /item /layout /widget layoutdefault spacing="6" margin="11"/ resources/ connections/ /ui
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/145045.html