精华内容
下载资源
问答
  • qtdesigner下拉框
    2022-03-06 09:53:26

    一、Layouts

    1、Vertical Layout 垂直布局,组件自动在垂直方向上分布
    2、Horizontal Layout 水平布局,组件自动在水平方向上分布
    3、Grid Layout 网格状布局,网格状布局大小改变时,每个网格的大小都改变
    4、Form Layout 窗体布局,与网格状布局类似,但是只有最右侧的一列网格会改变大小

    二、Spacers

    1、Horizontal Spacer 一个用于水平分隔的空格,可以将多个组件水平分隔开,添加N个即隔开N个空格距离
    2、Vertical Spacer 一个用于垂直分隔的空格,可以将多个组件垂直分隔开,添加N个即隔开N个空格距离

    三、Buttons:

    1、Push Button:按钮

     setCheckable() 	 设置按钮是否已经被选中,如果设置True,则表示按钮将保持已点击和释放状态
     toggle() 	 在按钮状态之间进行切换
     setIcon() 	 设置按钮上的图标
     setEnabled() 	 设置按钮是否可以使用,当设置为False时,按钮变成不可用状态,点击它不会发射信号
     isChecked() 	 返回按钮的状态,返回值为True或者False
     setDefault() 	 设置按钮的默认状态
     setText() 	 设置按钮的显示文本
     text() 	 返回按钮的显示文本
    

    2、Tool Button: 工具操作相关的按钮,通常和QToolBar搭配使用。QToolButton通常不显示文本,而显示图标QIcon。
    3、Radio Button: 单选按钮
    4、Check Box: 复选框按钮、多选按钮

    setChecked()	设置复选框的状态,设置为True表示选中,False表示取消选中的复选框
    setText()	设置复选框的显示文本
    text()	返回复选框的显示文本
    isChecked()	检查复选框是否被选中
    setTriState()	设置复选框为一个三态复选框
    setCheckState()	三态复选框的状态设置,具体设置可以见下表
     - Qt.Checked	0	组件被选中 
     - Qt.PartiallyChecked	1	组件被半选中
     - Qt.Unchecked	2	组件没有被选中(默认)
    

    5、CommandLinkButton: 命令链接按钮,命令链接按钮不应单独使用,而应作为向导和对话框中单选按钮的替代选项Dialog
    6、Button Box: 按钮盒子

    四、items view

    1、List View
    2、Tree View
    3、Table View
    4、Column View
    5、Undo View

    五、items widget

    1、List widget
    2、Tree widget
    3、Table widget

    六、Containers

    为了将界面上的各个组件的分布设计得更加美观,经常使用一些容器类组件,如 GroupBox、
    TabWidget、Frame 等。

    1、Group Box:用作不同区块的容器
    2、Scroll Area
    3、Tool Box
    4、Tab Widget:用作不同页的分页按钮
    5、Stacked Widget/6、Frame
    7、Widget
    8、MDI Area
    9、Dock Widget

    七、Input Widgets

    1、Combo Box 下拉框列表。用于输入指定枚举值。
    2、Font Combo Box
    3、Line Edit:单行文本框,输入单行字符串。控件对象常用函数为Text() 返回文本框内容,用于获取输入。setText() 用于设置文本框显示。

    setAlignment()	按固定值方式对齐文本
     - Qt.AlignLeft:水平方向靠左对齐
     - Qt.AlignRight:水平方向靠右对齐
     - Qt.AlignCenter:水平方向居中对齐
     - Qt.AlignJustify:水平方向调整间距两端对齐
     - Qt.AlignTop:垂直方向靠上对齐
     - Qt.AlignBottom:垂直方向靠下对齐
     - Qt.AlignVCenter:垂直方向居中对齐
    
    setEchoMode()	设置文本框的显示格式,允许输入的文本显示格式的值可以是:
     - QLineEdit.Normal:正常显示所输入的字符,此为默认选项
     - QLineEdit.NoEcho:不显示任何输入的字符,常用于密码类型的输入,且长度保密
     - QLineEdit.Password:显示与平台相关的密码掩饰字符,而不是实际输入的字符   
     - QLineEdit.PasswordEchoOnEdit:在编辑时显示字符,负责显示密码类型的输入
     - 
    setPlaceholderText()	设置文本框显示文字
    setMaxLength()	设置文本框所允许输入的最大字符数
    setReadOnly()	设置文本为只读
    setText()	设置文本框的内容
    text()	返回文本框的内容
    setDragEnable()	setDragEnable()
    selectAll()	全选
    setFocus()	获得焦点
    setInputMask()	设置掩码
    setValidator()	
    设置文本框的验证器(验证规则),将限制任意可能输入的文本,可用的校验器为
    QIntValidator:限制输入整数
    QDoubleValidator:限制输入浮点数
    QRegexpValidator:检查输入是否符合正则表达式
    

    4、TextEdit 多行文本框,输入多行字符串。

    setText(a) # 设置文本
    append(a) # 追加文本
    toPlainText() # 获取文本
    

    5、Plain Text Edit
    6、Spin Box 计数器 用于处理整数值
    7、Doubble Spin Box 计数器,于处理浮点值
    8、Time Edit
    9、Date Edit
    10、Date/Time Edit
    11、Dial
    12、Horizontal Scroll Bar
    13、Vertical Scroll Bar
    14、Horizontal Slider 水平滑动条
    15、Vertical Slider 垂直滑动条
    16、Key Sequence Edit

    八、Display Widgets:

    1、Label:用于信息提示,显示图片、网页链接、不可编辑的文本

    setText():显示内容
    text()  # 读取内容
    

    2、 Text Browser:显示文本控件。

    setText() # 设置文本
    append() # 追加文本
    toPlainText() # 获取文本
    

    3、Graphics View
    4、Calendar Widget
    5、LCD Number
    6、Progress Bar 进度条
    7、Horizontal Line
    8、Vertical Line
    9、OpenGL Widget

    九、其它

    1、QMessageBox 用于提示信息, 如警告、询问和严重出错等。
    2、QFileDialog 用于打开文件和保存文件,可以设置过滤器限制文件后缀名。
    3、QFontDialog 用于设置字体。
    4、QInputDialog 用于控件的标准输入,如getInt只能获得整数输入。
    5、QColorDialog 用于设置颜色。

    更多相关内容
  • 课程目录视频链接课程重点代码位置完整代码遇到的问题改写效果展示改写注意点改写代码(QTdesigner模式) 老师原课件下载地址: 有积分的朋友,支持下我,打赏也OK。 不下载也可以,我每节课会吧代码贴出来 视频...

    ** >>> 点击进入:pyqt5专栏<<<**

    老师原课件下载地址:
    有积分的朋友,支持下我,打赏也OK。
    不下载也可以,我每节课会吧代码贴出来


    视频链接

    P39课时40.下拉列表控件(QComboBox)


    课程重点

    下拉列表
    在这里插入图片描述


    代码位置

    在这里插入图片描述


    完整代码

    '''
    
    下拉列表控件(QComboBox)
    
    1. 如果将列表项添加到QComboBox控件中
    
    2. 如何获取选中的列表项
    
    '''
    
    import sys
    from PyQt5.QtCore import *
    from PyQt5.QtGui import *
    from PyQt5.QtWidgets import *
    
    class QComboBoxDemo(QWidget):
        def __init__(self):
            super(QComboBoxDemo,self).__init__()
            self.initUI()
    
        def initUI(self):
            self.setWindowTitle('下拉列表控件演示')
            self.resize(300,100)
    
            layout = QVBoxLayout()
    
            self.label = QLabel('请选择编程语言')
    
            self.cb = QComboBox()
            self.cb.addItem('C++')
            self.cb.addItem('Python')
            self.cb.addItems(['Java','C#','Ruby'])
    
            self.cb.currentIndexChanged.connect(self.selectionChange)
    
            layout.addWidget(self.label)
            layout.addWidget(self.cb)
    
            self.setLayout(layout)
    
        def selectionChange(self,i):
            self.label.setText(self.cb.currentText())
            self.label.adjustSize()
    
            for count in range(self.cb.count()):
                print('item' + str(count) + '=' + self.cb.itemText(count))
    
            print('current index',i,'selection changed', self.cb.currentText())
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        main = QComboBoxDemo()
        main.show()
        sys.exit(app.exec_())
    

    遇到的问题


    改写效果展示

    在这里插入图片描述


    改写注意点

    双击窗口,弹出添加框
    在这里插入图片描述

    测试功能:sizeAdjustPolicy
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    说明这个设置优先级高一些!
    在这里插入图片描述


    改写代码(QTdesigner模式)

    # -*- coding:utf-8 -*-
    '''
    @Author: knocky
    @Blog: https://blog.csdn.net/zzx188891020
    @E-mail: 188891020@qq.com
    @File: class_X.py
    @CreateTime: 2020/5/11 23:36
    '''
    
    import sys
    from PyQt5.QtWidgets import QApplication
    from PyQt5 import uic
    
    
    class my_form():
        def __init__(self):
            super().__init__()
            self.ui = uic.loadUi("../ui_package/class40.ui")
            self.ui.comboBox.currentIndexChanged.connect(self.selectionChange)
    
        def selectionChange(self, i): # 这里的i应该是接受信号,说明currentIndexChanged有返回值
            self.ui.label.setText(self.ui.comboBox.currentText())
            self.ui.label.adjustSize()
    
            for count in range(self.ui.comboBox.count()):
                print('item' + str(count) + '=' + self.ui.comboBox.itemText(count))
    
            print('current index', i, 'selection changed', self.ui.comboBox.currentText())
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        main = my_form()
        main.ui.show()
        sys.exit(app.exec_())
    
    
    展开全文
  • Qt实现多选下拉框

    2022-07-26 14:22:47
    MultiSelectComboBox为继承QComboBox实现多选下拉框,可点击删除选择项

    一、效果展示

    二、实现思路

    写一个类MultiSelectComboBox继承QComboBox,要实现多选则可以设置QComboBox的View,通过view的item设置可以多选,然后重写QComboBox的showPopup、hidePopup、eventFilter,控制下列表框点框的弹出有关闭。

    三、代码实现

    multiselectcombobox.h

    #ifndef MULTISELECTCOMBOBOX_H
    #define MULTISELECTCOMBOBOX_H
    
    #include <QWidget>
    #include <QListView>
    #include <QStandardItemModel>
    #include <QComboBox>
    class MultiSelectComboBox : public QComboBox
    {
        Q_OBJECT
    
    public:
        MultiSelectComboBox(QWidget *parent = nullptr);
        ~MultiSelectComboBox() override;
        void addItem(const QString &text, const QVariant &userData = QVariant());
        void addItem(const QIcon &icon, const QString &text, const QVariant &userData = QVariant());
        void addItems(const QStringList &texts);
        QStringList currentText();
        QList<int> currentIndex();
    protected:
        bool eventFilter(QObject *watched, QEvent *event) override;
        void showPopup() override;
        void hidePopup() override;
    private:
        bool isPermitHidePopup;
        QListView* selectItemView;
        QStandardItemModel* selectModel;
        QListView* popupView;
        QStandardItemModel* popupModel;
        void selectItemViewPress(QPoint pos);
    
    
    };
    
    #endif // MULTISELECTCOMBOBOX_H
    

    multiselectcombobox.cpp

    #include "multiselectcombobox.h"
    #include <QStandardItem>
    #include <QHBoxLayout>
    #include <QEvent>
    #include <QMouseEvent>
    MultiSelectComboBox::MultiSelectComboBox(QWidget *parent)
        : QComboBox(parent)
    {
        //去掉下拉箭头
        setStyleSheet("QComboBox::drop-down{border-style:none;}");
        //设置可编辑
        setEditable(true);
        //selectItemView盖住QComboBox
        selectItemView=new QListView(this);
        selectItemView->setMinimumHeight(30);
        //QListView{outline: none;} 去掉项虚线框                     设置正常状态和选中为状态item的背景色相同
        selectItemView->setStyleSheet("QListView{outline: none;} QListView::item {background:#BDD7FD;} QListView::item:hover {background: #BDD7FD;}");
        selectItemView->setIconSize(QSize(12,12));
        //设置各项的间隔
        selectItemView->setSpacing(3);
        //设置为不触发,不然点击可修改项内容
        selectItemView->setEditTriggers(QAbstractItemView::NoEditTriggers);
        //设置会调整
        selectItemView->setResizeMode(QListView::Adjust);
        //设置为自动换行
        selectItemView->setWrapping(true);
        //设置浮动方向
        selectItemView->setFlow(QListView::LeftToRight);
        //水平滚动条设置不不显示
        selectItemView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
        //选择模式设置为不显示
        selectItemView->setSelectionMode(QAbstractItemView::NoSelection);
    
        selectModel=new QStandardItemModel();
        selectItemView->setModel(selectModel);
    
        QHBoxLayout* lineLayout=new QHBoxLayout(this);
        lineLayout->setMargin(0);
        lineLayout->setSpacing(0);
        lineLayout->addWidget(selectItemView);
    
        //安装事件过滤器,处理点击x删除
        selectItemView->viewport()->installEventFilter(this);
        popupView=new QListView();
        popupModel=new QStandardItemModel();
        popupView->setModel(popupModel);
        setView(popupView);
        setModel(popupModel);
        installEventFilter(this);
        //激活下拉列表某行的信号处理函数
        connect(this, QOverload<int>::of(&QComboBox::activated),
             [=](int index){
            bool hasExist=false;
            QStandardItem* clickItem=popupModel->item(index);
            QString text=clickItem->text();
            //判断项是否已经选过,选过则删除选中项
            for(int row=0;row<selectModel->rowCount();row++)
            {
                QStandardItem* item=selectModel->item(row);
                if(item->text()==text)
                {
                    selectModel->removeRow(row);
                    hasExist=true;
                    break;
                }
            }
            if(!hasExist)
            {
                //没选过则添加,并改变选项的状态
                clickItem->setCheckState(Qt::Checked);
                QStandardItem* item=new QStandardItem(QIcon("://del.png"),text);
                selectModel->appendRow(item);
            }
            else
            {
                //选中过点击改为未选中状态
                clickItem->setCheckState(Qt::Unchecked);
            }
        });
        //frame为弹出下拉列表框
        QFrame* frame=this->findChild<QFrame*>();
        if(frame)
        {
            frame->installEventFilter(this);
        }
       installEventFilter(this);
    
    }
    
    MultiSelectComboBox::~MultiSelectComboBox()
    {
    
    }
    //所有添加项的方法都选调用父类方式再设置可以check
    void MultiSelectComboBox::addItem(const QString &text, const QVariant &userData)
    {
        QComboBox::addItem(text,userData);
        popupModel->item(findText(text))->setCheckable(true);
    
    }
    
    void MultiSelectComboBox::addItem(const QIcon &icon, const QString &text, const QVariant &userData)
    {
        QComboBox::addItem(icon,text,userData);
        popupModel->item(findText(text))->setCheckable(true);
    }
    
    void MultiSelectComboBox::addItems(const QStringList &texts)
    {
        QComboBox::addItems(texts);
        for(int row=0;row<popupModel->rowCount();row++)
        {
            popupModel->item(row)->setCheckable(true);
        }
    }
    
    //返回所有选中项的内容,用QStringList存储
    QStringList MultiSelectComboBox::currentText()
    {
        QStringList items;
        for(int row=0;row<popupModel->rowCount();row++)
        {
            QStandardItem* item=popupModel->item(row);
            if(item->checkState()==Qt::Checked)
            {
                items<<item->text();
            }
        }
        return items;
    }
    //返回所有选中项的索引,用QList<int>存储
    QList<int> MultiSelectComboBox::currentIndex()
    {
        QList<int> indexs;
        for(int row=0;row<popupModel->rowCount();row++)
        {
            QStandardItem* item=popupModel->item(row);
            if(item->checkState()==Qt::Checked)
            {
                indexs<<row;
            }
        }
        return indexs;
    }
    
    bool MultiSelectComboBox::eventFilter(QObject *watched, QEvent *event)
    {
        QFrame* frame=this->findChild<QFrame*>();
        if(frame&&frame==watched)
        {
    
            if(event->type()==QEvent::MouseButtonPress)
            {
                QMouseEvent* mouseEvent=static_cast<QMouseEvent*>(event);
                QPoint globalPos=mouseEvent->globalPos();
                QRect rect(frame->mapToGlobal(QPoint(0,0)),QSize(frame->width(),frame->height()));
                QRect rect1(selectItemView->viewport()->mapToGlobal(QPoint(0,0)),QSize(selectItemView->viewport()->width(),selectItemView->viewport()->height()));
                //不在下拉列表框和显示选项项的viewport范围内的按下则允许关闭
                if(!rect.contains(globalPos)&&!rect1.contains(globalPos))
                {
                    isPermitHidePopup=true;
    
                }
                else
                {
                    selectItemViewPress(selectItemView->viewport()->mapFromGlobal(globalPos));
                }
    
            }
    
        }
    
        if(watched==selectItemView->viewport())
        {
            //处理selectItemView->viewport的鼠标按下事件
            if(event->type()==QEvent::MouseButtonPress)
            {
                QMouseEvent* mouseEvent=static_cast<QMouseEvent*>(event);
                selectItemViewPress(mouseEvent->pos());
            }
        }
        //屏蔽滑轮事件
        if(watched==this)
        {
            if(event->type()==QEvent::Wheel)
            {
                return true;
            }
    
        }
    
        return QComboBox::eventFilter(watched,event);
    }
    
    void MultiSelectComboBox::showPopup()
    {
        QComboBox::showPopup();
        isPermitHidePopup=false;
    }
    
    void MultiSelectComboBox::hidePopup()
    {
        if(isPermitHidePopup)
        {
            QComboBox::hidePopup();
        }
    }
    
    void MultiSelectComboBox::selectItemViewPress(QPoint pos)
    {
        QModelIndex index=selectItemView->indexAt(pos);
        //有效,则该坐标有选中项
        if(index.isValid())
        {
            QRect rect=selectItemView->visualRect(index);
            QSize iconSize=selectItemView->iconSize();
            //x图标的区域
            QRect iconRect=QRect(rect.left(),rect.top(),iconSize.width(),iconSize.height());
            //鼠标在x图标的区域内
            if(iconRect.contains(pos))
            {
                QStandardItem* item=selectModel->itemFromIndex(index);
                //修改状态为未选中
                popupModel->item(findText(item->text()))->setCheckState(Qt::Unchecked);
                //删除项
                selectModel->removeRow(index.row());
    
            }
    
        }
        showPopup();
    
    }
    
    
    
    

    四、源码下载

    源码点击下载

    展开全文
  • 基于QT的弹出右侧菜单弹窗的实现,采用QML的方式实现的
  • Qt-Designer默认值的坑

    2021-09-17 15:29:29
    Qt Designer 可以很方便的进行界面设计和控件属性的设置,但是这里有一个非常隐蔽的细节,很容易踩坑,这个细节就是——控件的属性值是否是默认值。

    Qt Designer 可以很方便的进行界面设计和控件属性的设置,但是这里有一个非常隐蔽的细节,很容易踩坑,这个细节就是——控件的属性值是否是默认值。

    举例

    • 我们都知道,styleSheet可以设置控件的样式,那么要注意,如下两个styleSheet是有区别的

     uic生成头文件时,第一种不会有setStyleSheet语句,而第二种会有setStyleSheet("");语句,有一次我在使用他人提供的UI组件时,忽略了这一点,导致原有组件的某些样式显示异常,原因就是第二种实际上把styleSheet设置为空,覆盖了原有的组件设置的styleSheet属性。

    • 使用webEngineView控件时,有一个属性是url

     

    如果拖动到界面上,默认是下面那种状态,这就会出现一个奇怪的现象。如果你连接了loadFinished信号,你会发现第一次显示该控件什么都不加载的情况下,自动会触发一次该信号,如果你手动加载了某个页面,又会再次触发。第一次触发则是因为该控件加载完了“about:blank”这个页面,第二次触发则是正常的指定页面加载完成。本质上,第二种状态下uic生成的代码里一定有load语句,因此才触发信号,第一种状态则不会生成load语句。

    解决办法

     点击属性重置按钮,就会真正的清空你对这个属性值的修改。

    总结

     对于styleSheet属性不为粗体的情况,应理解为不改变原有的styleSheet,而不是styleSheet设置为空,因为代码里仍然可能手动修改styleSheet。其他属性道理类似

    展开全文
  • 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮。并转换成mainWindow.py # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'f.ui' # # Created by: PyQt5 UI...
  • 刚开始学习qt时,在遇到下拉复选框问题的时候总是使用表格来实现这个功能,因为表格单元格可以添加代理,而QComboBox类对象在设置代理后总是不生效。使用表格来实现,如果需求本来就是在表格中还好,但有时候只是...
  • 添加下拉框内容 16 void appendItem( const QString &text, bool bChecked); 17 18 // QComboBox的虚函数用来隐藏列表框,当单击是复选框时不让隐藏,用来改变状态 19 void hidePopup(); 20 ...
  • Qt自定义的ComboBox(下拉框

    千次阅读 2019-07-27 12:50:42
    QT自定义ComboBox前言方法一方法二功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants...
  • GitHub源码:Qt串口调试助手下载 实现结果:点击串口选择下拉框,重新扫描可用串口,并且显示端口硬件信息。 1. 新建类,继承 QComboBox,重写鼠标点击事件 代码中,对一些方法和属性的说明: ...
  • Qt::Checked : Qt::Unchecked); 45. pNewItem->setData(pMenuItem->GetMenuId()); 46. m_pItemModel->appendRow(pNewItem); 47. } 48. UpdateText(); 49. } 50. 51. void MultiComBox::RemoveItem(int row) 52...
  • 添加选项:第一种:UI界面静态添加 如下第二种:代码添加:如下1.在mainwindow.h头文件中添加创建用函数2.定义函数 3.在main.cpp 主函数中运行w.add_combobox();函数结果如下:Combo box 信号:activated(QString):...
  • QT 下拉菜单实现

    2021-12-06 17:25:24
    setUpMenu->setWindowFlags(setUpMenu->windowFlags() | Qt::FramelessWindowHint); setUpMenu->setAttribute(Qt::WA_TranslucentBackground); QString DropDownStyleStr = QString(" QMenu {background: #...
  • 相比于通过控件提升来使用自定义控件,在Qt Designer中直接使用自定义控件更加方便和直观。这里就介绍一下如编写和注册Qt Designer插件。Qt Designer插件本质上来说就是一个动态库,和普通的动态库的区别是插件中...
  • PyQt5快速入门教程4-QtDesigner设计登录界面 1、实现效果预览 用QtDesigner设计一个登录界面,用QTDesigner设计界面简单多了,而且更加直观。先看下效果图: 那么接下来一步一步完成该功能。 3、绘制ui界面 ...
  • 由于Qt仅仅提供多选下拉框只能选择单项项目,要实现多选项选择,因此需要自己设计和编码,针对multicombox 的研究如下,总结网上及自己实际经验,汇总如下: (1)下拉listview设置 左边为样式A为“fusion”样式,在...
  • PyQT5 之 Qt Designer 介绍

    千次阅读 2021-08-03 17:47:18
    pyqt5是一套Python绑定Digia QT5应用的框架。它可用于Python 2和3。本教程使用Python 3。Qt库是最强大的GUI库之一。pyqt5的官方网站http://www.riverbankcomputing.co.uk/news pyqt5做为Python的一个模块,它有620多...
  • PyQt5中 Qt Designer工具的使用

    千次阅读 2021-07-19 17:48:34
    Qt Designer是PyQt5程序UI界面的实现工具,使用Qt Designer可以拖拽、点击完成GUI界面设计,并且设计完成的.ui程序可以转换成.py文件供python程序调用。本文主要通过用户登录需求描述Qt Designer工具开发界面的使用...
  • Qt Designer是PyQt程序UI界面的实现工具,Qt Designer工具使用简单,可以通过拖拽和点击完成复杂界面设计,并且设计完成的.ui程序可以转换成.py文件供python程序调用。本文主要通过用户登录需求描述Qt Designer工具...
  • Qt Designer是PyQt程序UI界面的实现工具,Qt Designer工具使用简单,可以通过拖拽和点击完成复杂界面设计,并且设计完成的.ui程序可以转换成.py文件供Python程序调用这篇文章主要介绍了PyQt中Qt Designer工具的使用...
  • python 之 Qt Designer工具的使用方法

    千次阅读 多人点赞 2020-09-17 17:18:06
    一、Qt Designer简介 Qt Designer是PyQt程序UI界面的实现工具,Qt Designer工具使用简单,可以通过拖拽和点击完成复杂界面设计,并且设计完成的.ui程序可以转换成.py文件供python程序调用。本文主要通过用户登录需求...
  • 避免和主窗口的Ui_MainWindow重复,如本例Ui_MainWindow2 (2)将索要引用的窗口继承的object类修改为QMainWindow类 class Ui_MainWindow2(QMainWindow): 若报错:引入from PyQt5.QtWidgets import QMainWindow...
  • 这两种类型的可以通过代码编写,也可以用Qt Designer 设计。一个例子如下图所示: 图 1 可扩展对话框的示例 可扩展对话框通常外观简单,带有一个可扩展按钮来切换对话框的简单外观和可扩展外观。这种对话框...
  • 2、将编译版本改为Release,然后右键项目,点击清除,执行qmake,重新构建,找到编译目录下生成的dll文件和lib文件,复制到Qt安装目录下的Tools/QtCreator/bin/plugins/designer路径下,重新打开Qt Creator,可以在...
  • 虽然Qt Designer的表单时正在编辑的组件的准确表示,但在编辑时预览最终外观很有用。此功能可以通过打开表单菜单和选择预览来激活,也可以在表单中按Ctrl+R来激活。 预览显示在应用程序中使用时最终组件的外观 自Qt...
  • Python Qt Designer功能详细介绍

    千次阅读 2020-11-12 11:22:15
    2.37 Font Combo Box 字体下拉框 2.38 Line Edit 行编辑器,单行文本编辑框,可以输入单行文本; 2.39 Text Edit 文字编辑,多行文本输入框,可以输入显示多行文本和图片; 2.40 Plain Text Edit 纯文本编辑 ...
  • Qt为了方便GUI的设计,不仅仅提供了QPushButton、QLabel这样的单一控件,还提供了可以将多个控件功能合为一体的高级控件类。如:显示日历的QCalendarWidget类,还提供了将多个控件功能融为一体的控件。 ...
  • Python PyQt5 Qt Designer (Qt设计师)

    万次阅读 多人点赞 2019-02-19 13:54:12
    PyQt5 Qt Designer (Qt设计师) 本文由 Luzhuo 编写,转发请保留该信息. 原文: `` PyQt5是对Qt所有类进行封装, Qt能开发的东西, PyQt都能开发. Qt是强大的GUI库之一, 用C++开发, 并且跨平台. PyQt双许可证, 要么...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 422
精华内容 168
关键字:

qtdesigner下拉框