精华内容
下载资源
问答
  • QT滚动菜单控件

    2018-11-21 09:46:42
    import QtQuick 2.6 /* * 作者: yubo * 功能: PathView * 描述: 滚动菜单,滚动路线可设置,每个菜单激活Item可进行效果变化,具体坐标根据需求设置 * 日期: 2018-07-12 */ PathView { id: listView ...
    import QtQuick 2.6
    
    /*
     * 作者: yubo
     * 功能: PathView
     * 描述: 滚动菜单,滚动路线可设置,每个菜单激活Item可进行效果变化,具体坐标根据需求设置
     * 日期: 2018-07-12
     */
    PathView {
        id: listView
        property alias menuModel: listView.model
        pathItemCount: menuModel.count
        interactive: true
        preferredHighlightBegin: 0.5
        preferredHighlightEnd: 0.5
        highlightRangeMode: PathView.StrictlyEnforceRange
        delegate: Component {
            Item {
                id: wrapper
                scale: 0.9//PathView.iconScale
                width: 300
                height: 170
                Image {
                    id: iconMenuBorderBg
                    anchors.centerIn: iconMenuBorder
                    source: wrapper.PathView.isCurrentItem ?
                    "qrc:/Image/Common/MenuTheme2/L1/selectBaseBg.png" : ""
                }
                SequentialAnimation {
                    running: iconMenuBorderBg.visible
                    alwaysRunToEnd: true
                    NumberAnimation { target: iconMenuBorderBg; properties: "opacity"; from: 0.1; to: 1; duration: 1000 }
                    NumberAnimation { target: iconMenuBorderBg; properties: "opacity"; from: 1; to: 0.1; duration: 1000 }
                    loops: Animation.Infinite
                }
                Image {
                    id: iconMenuBorder
                    anchors.horizontalCenter: iconMenu.horizontalCenter
                    anchors.verticalCenter: iconMenu.verticalCenter
                    anchors.verticalCenterOffset: wrapper.PathView.isCurrentItem ? 0 : 35
                    source: wrapper.PathView.isCurrentItem ?
                    "qrc:/Image/Common/MenuTheme2/L1/selectBase.png" :
                    "qrc:/Image/Common/MenuTheme2/L1/normalBase.png"
                }
                Image {
                    anchors.centerIn: iconMenuBorder
                    source: wrapper.PathView.isCurrentItem ?
                    "qrc:/Image/Common/MenuTheme2/L1/baseBg.png" : ""
                }
                Image {
                    id: iconMenu
                    source: wrapper.PathView.isCurrentItem ? iconSelect : icon
                }
                TextFieldAuto {
                    id: titleMenu
                    scale: 1
                    visible: wrapper.PathView.isCurrentItem
                    opacity: visible
                    anchors.horizontalCenter: iconMenu.horizontalCenter
                    anchors.horizontalCenterOffset: -155
                    anchors.top: iconMenu.bottom
                    anchors.topMargin: 40
                    valueWidth: 300
                    valueColor: "#ffffff"
                    valueFontSize: 30
                    infoValue: name
                    Behavior on opacity { NumberAnimation { duration: 300; easing.type: Easing.InCubic } }
                }
                Image {
                    visible: wrapper.PathView.isCurrentItem
                    anchors.horizontalCenter: titleMenu.horizontalCenter
                    anchors.horizontalCenterOffset: 150
                    anchors.top: titleMenu.bottom
                    anchors.topMargin: 30
                    source: "qrc:/Image/Common/MenuTheme2/L1/line.png"
                }
            }
        }
        highlightMoveDuration: 200
        model: menuModel
    
        path: Path {
            id: p1
            startX: 675
            startY: 420
            //PathAttribute { name: "iconScale"; value: 0.6 }
    
            PathLine {
                x: 855
                y: 425
            }
            //PathAttribute { name: "iconScale"; value: 0.8 }
    
            PathLine {
                x: 1035
                y: 430
            }
            //PathAttribute { name: "iconScale"; value: 0.8 }
    
            PathLine {
                x: 1215
                y: 425
            }
            //PathAttribute { name: "iconScale"; value: 0.8 }
    
            PathLine {
                x: 1395
                y: 420
            }
            //PathAttribute { name: "iconScale"; value: 0.6 }
    
        }
    }
    
    
    

     

    展开全文
  • QT 代码布局,控件添加下拉菜单

    千次阅读 2019-07-08 15:15:41
    QT 代码布局,控件添加下拉菜单 最终实现: .h文件: #ifndef MYWIDGET_H #define MYWIDGET_H #include <QWidget> #include <QPushButton> #include <QToolButton> #include <QMenu> #...

    QT 代码布局,控件添加下拉菜单

    最终实现:
    在这里插入图片描述
    .h文件:

    #ifndef MYWIDGET_H
    #define MYWIDGET_H
    
    #include <QWidget>
    #include <QPushButton>
    #include <QToolButton>
    #include <QMenu>
    #include <QVBoxLayout>	//垂直布局
    #include <QHBoxLayout>	//水平布局
    #include <QGridLayout>	//栅格布局
    class MyWidget : public QWidget
    {
        Q_OBJECT
    
    public:
        MyWidget(QWidget *parent = 0);
        ~MyWidget();
        void init();
    public slots:
        void doPrint();
    private:
    
    };
    
    #endif // MYWIDGET_H
    

    .cpp文件:

    MyWidget::MyWidget(QWidget *parent)
        : QWidget(parent)
    {
    
        this->resize(600,480);
        QGridLayout *grid = new QGridLayout(this);
        grid->setSpacing(6);
        grid->setContentsMargins(11, 11, 11, 11);
        QVBoxLayout *vboxLayout = new QVBoxLayout;
        QVBoxLayout *vboxLayout2 = new QVBoxLayout;
        QLineEdit *name = new QLineEdit;
        name->setText("name");
        name->setAlignment(Qt::AlignHCenter);
        QLineEdit *password = new QLineEdit;
        password->setText("password");
        password->setEchoMode(QLineEdit::Password);
        password->setAlignment(Qt::AlignHCenter);
        //为Tool控件添加下拉菜单
        QToolButton *toolButton = new QToolButton;
        QMenu *menu = new QMenu();
        menu->addAction("aaa",this,SLOT(doPrint()));
        menu->addAction("bbb",this,SLOT(doPrint()));
        menu->addAction("ccc",this,SLOT(doPrint()));
        toolButton->setMinimumSize(QSize(100,50));
        toolButton->setMenu(menu);
        toolButton->setPopupMode(QToolButton::InstantPopup);
        vboxLayout->addWidget(toolButton);
    
        vboxLayout->addWidget(name);
        vboxLayout->addWidget(password);
        vboxLayout2->addLayout(vboxLayout);
    
        QHBoxLayout *hboxLayout = new QHBoxLayout;
        QPushButton *yesButton = new QPushButton;
        QPushButton *noButton = new QPushButton;
        yesButton->setText("yes");
        noButton->setText("no");
        hboxLayout->addWidget(yesButton);
        hboxLayout->addWidget(noButton);
        vboxLayout->addLayout(hboxLayout);
        grid->addLayout(vboxLayout2,0,0,1,1);
    
    }
    
    MyWidget::~MyWidget()
    {
    
    }
    
    void MyWidget::doPrint()
    {
         QAction *action = (QAction *)this->sender();
        if(action->text()=="aaa")
            qDebug()<<"aaa";
        if(action->text()=="bbb")
            qDebug()<<"bbb";
        if(action->text()=="ccc")
            qDebug()<<"ccc";
    }
    
    
    展开全文
  • http://apps.hi.baidu.com/share/detail/24855341 QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介(持续添加更新中...... QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow):void ...

     

    http://apps.hi.baidu.com/share/detail/24855341

     

    QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介(持续添加更新中......

    QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow):

    void CGuiMainwindow::contextMenuEvent(QContextMenuEvent* e)
    {
    QMenu *menu = new QMenu();
    menu->addSeparator();
    menu->addSeparator();
    menu->addAction(Act_Maxsize);
    menu->addSeparator();
    menu->addSeparator();
    menu->addAction(Act_Normal);
    menu->addSeparator();
    menu->addSeparator();
    menu->exec(e->globalPos());
    delete menu;
    }

     

    其中Act_MaxsizeAct_Normal是两个QAction 对象指针。我的定义和初始化如下:

    QAction*    Act_Maxsize;
    QAction*    Act_Normal;

    Act_Maxsize     = new QAction(tr("XML"), this);
    Act_Maxsize->setIcon(QIcon("Resources/logo.png"));
    Act_Normal     = new QAction(tr("SHOW"), this);
    Act_Normal->setIcon(QIcon("Resources/logo.png"));
       connect(Act_Maxsize, SIGNAL(triggered()), this, SLOT(ADDChange()));
    connect(Act_Normal, SIGNAL(triggered()), this, SLOT(XMLChange()));

    油槽函数是用来响应右键菜单的点击动作。

     

     

     

    QT内置控件添加右键菜单方法(以QTreeWidget添加右键菜单为例):

    定义油槽

    connect(moduleTree,SIGNAL(itemPressed(QTreeWidgetItem *, int)),this,SLOT(SlotItemClicked(

    QTreeWidgetItem *, int)));

    实现槽函数

    void CGuiMainwindow::SlotItemClicked(QTreeWidgetItem *item, int column)

    {

         if (qApp->mouseButtons() == Qt::LeftButton)

         { return; }

         if (qApp->mouseButtons() == Qt::RightButton)

         { if (item->childCount() > 0) { return; }

            ShowMenu();

         }

    }

     

    实现菜单显示功能函数:

    void CGuiMainwindow::ShowMenu()

    {

         QPoint pos;

         QMenu menu(moduleTree);

         QIcon myIcon("Resources/logo.png");

         menu.addAction(myIcon,tr("菜单_1"));

         menu.addAction(myIcon,tr("菜单_2"));

         menu.addAction(myIcon,tr("菜单_3"));

         menu.addAction(myIcon,tr("菜单_4"));

         menu.addAction(myIcon,tr("菜单_5"));

         menu.addAction(myIcon,tr("菜单_6"));

         menu.exec(QCursor::pos());

    }

     

    展开全文
  • QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow): void CGuiMainwindow::contextMenuEvent(QContextMenuEvent* e) { QMenu *menu = new QMenu(); menu->addSeparator(); menu->addSeparator...


    QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow):

    void CGuiMainwindow::contextMenuEvent(QContextMenuEvent* e)
    {
    QMenu *menu = new QMenu();
    menu->addSeparator();
    menu->addSeparator();
    menu->addAction(Act_Maxsize);
    menu->addSeparator();
    menu->addSeparator();
    menu->addAction(Act_Normal);
    menu->addSeparator();
    menu->addSeparator();
    menu->exec(e->globalPos());
    delete menu;
    }


    其中Act_Maxsize和Act_Normal是两个QAction 对象指针。我的定义和初始化如下:

    QAction*    Act_Maxsize;
    QAction*    Act_Normal;
    Act_Maxsize     = new QAction(tr("XML"), this);
    Act_Maxsize->setIcon(QIcon("Resources/logo.png"));
    Act_Normal     = new QAction(tr("SHOW"), this);
    Act_Normal->setIcon(QIcon("Resources/logo.png"));
       connect(Act_Maxsize, SIGNAL(triggered()), this, SLOT(ADDChange()));
    connect(Act_Normal, SIGNAL(triggered()), this, SLOT(XMLChange()));

    油槽函数是用来响应右键菜单的点击动作。

    QT内置控件添加右键菜单方法(以QTreeWidget添加右键菜单为例):

    定义油槽
    connect(moduleTree,SIGNAL(itemPressed(QTreeWidgetItem *, int)),this,SLOT(SlotItemClicked(
    QTreeWidgetItem *, int)));
    实现槽函数
    void CGuiMainwindow::SlotItemClicked(QTreeWidgetItem *item, int column)
    {
         if (qApp->mouseButtons() == Qt::LeftButton)
         { return; }
         if (qApp->mouseButtons() == Qt::RightButton)
         { if (item->childCount() > 0) { return; }
            ShowMenu();
         }
    }
    实现菜单显示功能函数:
    void CGuiMainwindow::ShowMenu()
    {
         QPoint pos;
         QMenu menu(moduleTree);
         QIcon myIcon("Resources/logo.png");
         menu.addAction(myIcon,tr("菜单_1"));
         menu.addAction(myIcon,tr("菜单_2"));
         menu.addAction(myIcon,tr("菜单_3"));
         menu.addAction(myIcon,tr("菜单_4"));
         menu.addAction(myIcon,tr("菜单_5"));
         menu.addAction(myIcon,tr("菜单_6"));
         menu.exec(QCursor::pos());
    }

    展开全文
  • 在QTableView 中添加Combo控件,实现列表中的下拉选择控件,在Qt中Demo有了编辑框和spin的列表控件,我在demo中spin的工程中添加了combo,实现列表中的combo下拉选择控件,其他的控件也可以参考此方法开发,新加的为...
  • QT之菜单栏QMenu,下拉菜单QAction,工具栏QToolBar的使用(一),添加了菜单栏edit,help,以及edit,help的下拉菜单,还有添加了file工具栏,edit工具栏 菜单栏及下拉菜单与上一节使用一样, 创建菜单栏类:  ...
  • 其实,在这里之前看了许多自定义颜色控件,有的是采用继承QPushButton。点击后,直接弹出 QColorDialog,然后重写 paintEvent()函数,绘制背景为选中的颜色。但是,都没有下拉选择颜色的感觉。 也有的继承 QCombox。...
  • 需要的控件:QpushButton,QWidget,QsScrollAreaDemo用的是Qt5.10,需要的自行下载。 http://download.csdn.net/download/figo_lyf001/10267449原理:QScrollArea做边框,QWidget做按钮背景界面,QVBoxLayout做垂直...
  • 课程目录视频链接课程重点代码位置完整代码遇到的问题改写效果展示改写注意点...下拉列表控件(QComboBox) 课程重点 代码位置 完整代码 遇到的问题 改写效果展示 改写注意点 改写代码(QTdesigner模式) ...
  • QT comboBox设置下拉菜单()

    万次阅读 多人点赞 2018-09-29 11:50:19
    //Qt Creator 4.6.2 Based on Qt 5.11.1 (MSVC 2015, 32 bit)版本支持方法二(早些版本不支持的,具体从哪个版本开始支持,不太清楚) //通过设置当前文字来设置出事选中,值得注意的是,如果这个文字不在combobox...
  • 通过基本控件QPushButton,QWidget,实现下拉菜单,可以展开多级菜单。
  • QT中常见控件

    2020-07-16 10:18:13
    QT中最常用的控件QPushButton(按钮)、QLineEdit(文本框)、QRadioButton(单选框)、QCheckBox(复选框)、QFrame(一般用作容器控件,配合布局)、QProgressBar(进度条控件)这些控件的使用方法都非常简单,查一下帮助文档...
  • QT学习——控件

    2021-02-22 22:53:25
    QT学习——控件篇 QPushButton的属性 //今日领悟信号与槽:信号在发射过程中不能将函数在成员中定义,但是信号函数中的参数会自动与槽函数进行关联 //故在槽函数中可以采用lambda(匿名函数)的参数列表进行对应的...
  • PyQt5 下拉列表控件

    2021-04-16 20:05:42
    PyQt5 下拉列表控件 # @Time : 2021/4/16 18:44 # @Author : Kevin # @File : C.py # @Software: PyCharm # encoding = utf-8 """ 下拉列表控件(QComboBox) 1、如何将列表项添加到QComboBox控件中 2、如何...
  • Qt之实现下拉列表菜单

    万次阅读 2017-11-16 12:21:37
     在QGraphicsItem下使用QListWidget实现下拉列表的功能,并显示所有的选项,便于浏览和查询数据。 二、详解 1、部分代码 (1)clusterlistwidget.h [html] view plain copy ...
  • Qt下拉对话框 ComboBox的用法

    千次阅读 2019-03-30 10:45:34
    ComboBox是Qt下拉菜单的一个控件,通过下拉菜单选择不同的选项。 基本用法 m_ComBox = ui.comboBox; //设置默认显示值的索引,从0开始 m_ComBox->setCurrentIndex(1); //关联信号和槽 QObject::connect...
  • 描述,第一个下拉菜单代表省,选择后控制第二个城市的下拉菜单,每个城市有相应编码,打印选中的城市编码: 代码如下: from PyQt5.Qt import * class Window(QWidget): def __init__(self): super().__init__()...
  • Qt 中部分控件样式表

    2020-06-16 22:07:30
    Qt 中部分控件样式表 一般设置样式表使用setStylesheet(“”); background-color:red; //背景色 color:red; //文本颜色 width:15px; //控件宽 height:10px; //控件高 font-size:15px; //字体大小 你好! ...
  • // 为QToolButton设置菜单 toolButton->setMenu(menu); } 本文涉及工程代码: https://gitee.com/bailiyang/cdemo/tree/master/Qt/61QToolButtonMenu/QToolButtonMenu 若对你有帮助,欢迎点赞、收藏、评论,你的...
  • QT主窗体右键弹出下拉菜单方法

    千次阅读 2012-04-19 09:43:17
    From:... QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow): void CGuiMainwindow::contextMenuEvent(QContextMenuEvent* e) { QMenu *menu
  • qt ui界面控件含义,布局设计

    千次阅读 2019-08-19 11:16:29
    1、布局控件简介: 水平布局,里面的控件将水平展示,布局器里面的控件大小若没有固定,其大小将随着布局的大小而自动拉伸。可以通过设置其左(layoutLeftMargin)、上(layoutTopMargin)、右...在Qt ...
  • QT ComboBox 下拉对话框

    万次阅读 多人点赞 2018-08-02 14:13:32
    Combo Box是Qt下拉菜单控件。 二、ui界面设计 打开新建项目中的界面文件(**.ui) 向窗口中拖入一个Combo Box控件,双击Combo Box对象,添加下拉菜单的选项。 可以在属性编辑栏,编辑对象的属性。   三、...
  • 这是第二波控件 其中qtButton.h中的程序是 #ifndef QTBUTTON_H #define QTBUTTON_H #include #include "ui_qtbutton.h" //------------------------------- #include #include #include #include #...
  • qpushbutton 添加点击菜单后是与按钮左边界对齐的,本程序将其右对齐并去掉下拉箭头。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,361
精华内容 544
关键字:

qt下拉菜单控件