老师,您好,如何将spinBox的值赋予一个变量

JiKe1011 Qt 实战:计算器开发 最后由 qq_陌上浅歌 于2015年07月22日回复

  • 7 解决
  • 6k 浏览

如何将spinBox的值赋予一个变量

  • Mr.YELiex 2015年07月21日 回答 #1楼
  • 取值: 
    QSpinBox spinBox;
    
    int value = spinBox.value();
    
    赋值:
    QSpinBox spinBox;
    
    int value = 10 ;
    
    spinBox.setValue(value);
    
  • 0 评论
  • JiKe1011 2015年07月21日 回答 #2楼
  • 谢谢老师啦,可是我还是没有怎么看懂,

    是在这里添加吗private slots:
    那connect怎么写呢,我照老师的视频类比了一下
    private slots:
        void v_m(int m);
        void v_n(int n);
    
        void display_1();
       
    MainWindows.cpp
           connect(ui- >spinBox,SIGNAL(valueChanged(int)),this,SLOT(v_m(int)));
        connect(ui- >spinBox_2,SIGNAL(valueChanged(int)),this,SLOT(v_n(int)));
    void MainWindow::v_m(int)
    {
        emit valueChanged(m);
    }
    void MainWindow::v_n(int)
    {
        emit valueChanged(n);
    }
    
    void MainWindow::display_1()
    {
        ui- >label_21- >setText(m);
    }
    但是编译错误,老师能从中明白我想表达的问题吗,先谢谢老师啦
  • 0 评论
  • Mr.YELiex 2015年07月21日 回答 #3楼
  • private slot是Qt中的私有槽,是Qt4中的写法,5中的槽推荐用public slot

    这个没关系的  

    connect可以将信号与槽连接起来 你的错误可能是没有声明信号 信号本质上也是一个方法(函数),也是需要自己声明的 具体的你把错误和错误对应的代码贴出来

  • 0 评论
  • JiKe1011 2015年07月21日 回答 #5楼
  • 2.png

    3.png

    谢谢老师,老师能加一个沟通方式吗,qq2058246824

  • 0 评论
  • Mr.YELiex 2015年07月21日 回答 #6楼
  • 我一个个错误跟你说下来  第一个报错: 是函数实现的时候 只指定了参数类型 但是参数呢?并没有 如果用了QtCreator的话这个会自动给你补全的 不需要去改

    你三个函数都存在这个问题 使用了没有声明的变量


    然后是信号没有声明 前面跟你说的信号也是要声明的  

  • 0 评论
  • Mr.YELiex 2015年07月21日 回答 #7楼
  • 信号的声明方式是 头文件中


    signals:   
        void yourCustomSignal(type argument);
  • 0 评论