Qt day04

一、Input Widgets

    1、QComboBox

        1、添加备选内容

            在设计师中双击控件输入添加

            在代码中输入 ui->comboBox->addItem("金嘉宇");

        2、常用信号

            void currentIndexChanged(const QString &arg1)

            当前选项编号改变触发信号 arg1变后的内容

            currentIndexChanged(int index)

            当前选项编号改变触发信号 index变后的下标

            activated(const Qstring &arg1)

            activated(int index)

            选择了选项就会触发,无论选项是否改变

            currentTextChanged(const QString &arg1)

            当前选项的文字内容改变就会触发

                还可以勾选editable属性,内容可编辑,也会触发

    2、QLineEdit

        1、设置显示方式

            设置echoMode属性

                Normal  正常显示

                NoEcho  不显示输入内容

                PassWord    以密码框显示

                PassWordEchoOnEdit  编辑时可见完成后显示加密

        2、常见信号

            cursorPositionChanged(int arg1, int arg2)

            光标位置改变触发 arg1之前位置   arg2当前位置

            editingFinished()

            编辑完成(回车键)或者光标离开输入框就会触发

            returnPressed()

            按下回车键触发

            selectionChanged()

            拖选框中内容时触发

            textChanged(const QString &arg1)

            输入框中文本发生变化就会触发

                可以通过代码修改文本,也会触发该信号

            textEdited(const QString &arg1)

            输入框被输入修改发生变化才会触发

    3、QSpinBox

        1、常用设置

            minimum 最小值

            maximun 最大值

            singleStep  步长

            value   初始值

            displayIntegerBase  进制

        信号:

            valueChanged(const QString &arg1)

            valueChanged(int value)

            内容改变触发

二、Display Widget

    1、QL able

        主要是为了显示一些提示性的文字信息,并且在运行期间不能通过界面来修改它的内容,但是可以在设计师、代码中修改

        常用设置:

            位置、大小、字体、对齐方式等

        linkActivated(const QString &link)

        常用信号不多:

            linkActivated(const QString &link)

            当标签内容是超链接文本时,点击该超链接会触发信号

            ui->label->setText("%1");

三、事件

    Qt界面程序运行时,当用户操作键盘、鼠标发出一些特定动作时,Qt程序会自动调用一些对应的函数,这些函数都是虚函数(空的)

        如果子类覆盖了这些虚函数,就可以根据具体的键盘、鼠标的动作执行一些想要的操作

    这些动作就称为Qt的事件:

        resizeEvent(QResizeEvent *event)

        窗口大小变化事件

            event->size().width() ,event->size().height()

            窗口当前的宽度、高度

            event->oldSize().width(),event->oldSize().height()

            窗口上一次宽度、高度  

        mousePressEvent(QMouseEvent *event)

        鼠标按下事件

            event->button() 获取按下哪个鼠标键

            event->x(),event->y()   获取事件产生时鼠标的位置

        mouseReleaseEvent(QMouseEvent *event)

        鼠标弹起事件

        mouseDoubleClickEvent(QMouseEvent *event)

        双击鼠标事件

        mouseMoveEvent(QMouseEvent * event)

        鼠标按下并移动事件

        keyPressEvent(QKeyEvent * event)

        键盘按下事件

            event->key()    获取按下按键的键值

            与 Qt::Key_xxx  宏比较

            event->text()   获取按下按键的显示符号

        keyReleaseEvent(QKeyEvent *event)

        键盘弹起事件

        showEvent(QShowEvent *event)

        窗口显示事件

        hideEvent(QHideEvent *event)

        窗口隐藏事件

   

四、样式表

    是一种参考HTML中的CSS语法,用于设置控件样式,Qt给它自己的样式表语法取名为 QSS (Qt Style Sheets)

    设置方法1:

        在Qt设计实中,选中控件->右击->改变样式表->修改->确定

    设置方法2:

        在代码中,调用控件对象的setStyleSheet("QSS语句") ,改变某个控件样式,可以让控件动态变化

        常用的样式属性:

            color: rgb(x,x,x)   |   颜色英文

                设置控件中内容颜色

            bcakground-color: rgb(x,x,x)   |   颜色英文、

                设置控件中背景颜色

            border-style: double;

                边框样式

                double 双线

                solid  单实线

                dashed  单虚线

            border-color: rgb(0, 0, 0);

                边框颜色

            border-width: 20px;

                边框宽度

            border-radius: 5px;

                边框角的弧度

    样式表的继承与覆盖:

        当没有设置控件的样式表前,控件的样式表有两个来源:

            1、系统默认

            2、继承父类窗口

五、样式表的选择器

    样式表语法中,提供了选择器语法,可以指定哪些控件对该样式表有效

        选择器{

            QSS语句;

            ...

        }

    1、通配选择器

        *{

            QSS语句;

        }

        所有控件都生效

    2、类型选择器

        类名

        {

            QSS

        }

        该类型的控件以及子类生效

    3、

        ID选择器

        #name{

           

        }

你可能感兴趣的:(qt,ui,开发语言)