创建日期:2019-03-03
系列文章
- 树莓派 | 01 无显示器安装并通过wifi、ssh无线连接
- 树莓派 | 02 利用xdrp图形界面登陆树莓派
- 树莓派 | 03 安装qt并创建一个PushButton按钮单击后Dialog窗体响应
- 树莓派 | 04 安装基于python3.5的tensorflow,解决python版本不匹配问题
- 树莓派 | 05 安装wiringPi
流程
更新系统和源
sudo apt-get upgrade
sudo apt-get update
-
安装qt
安装Qt5:sudo apt-get install qt5-default
安装Qt IDE:sudo apt-get install qtcreator
用远程桌面登陆树莓派查看(登陆方法见上面文章目录第二篇)
- 大多数教程的推荐(跟风照搬)安装选项
sudo apt-get install gcc
(编译器,实际已有)
sudo apt-get install xterm
(一个终端显示工具)
sudo apt-get install git-core
(代码版本管理)
sudo apt-get install subversion
(另一个代码版本管理)
设置C和C++的Compiler
-
Tool -> Options
Build & Run -> Compilers
Add -> Gcc -> C
- 在
Compiler
后面点Browser
- 点几次上箭头(
Parent Directory
)到达根目录
- 按路径选择编译器:
/usr/bin/gcc
- 一路
Apply
、Ok
后重复一次设置C++的
设置Kits
-
Tools -> Options -> Kits
: 主要是设置Compiler
的C
、C++
都为GCC
;Debugger
为System GDB at /usr/bin/gdb
,记得保存
增加按<Tab>自动补全
-
Tool->Options->Environment->Keyboard
,将completeThis
快捷键设置为tab
Hellow World
-
New Project
-
Application -> Qt Widgets Application
-
设置
Name
,之后一路Next
-
双击
Forms/mainwindow.UI
-
从左边丢一个
Push Button
过去
-
新增按钮事件:对着PushButton右键转到槽
Go to slot
-
Select signal -> clicked()
后会自动跳转到文件mainwindow.cpp
,先不管他
-
对着Project右键,此处就是Projects那几个字下面的
HellowWorldQt
,依次点击Add New -> Qt -> Qt Designer Form Class -> Choose
-
Dialog without Buttons
然后一路Next
-
Class Detail
懒得改继续Next
-
双击
dialog.ui
,拖一个Text Edit
进去,随便打点内容,比如Hellow World Raspberry
- 在工程目录中编辑以下内容
mainwindow.h
新增两行
// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "dialog.h" // 这里
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_pushButton_clicked();
private:
Ui::MainWindow *ui;
Dialog *dialog; // 这里
};
#endif // MAINWINDOW_H
mainwindow.c
新增三行
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
dialog = new Dialog(this); // 这里
dialog->setModal(false); // 这里
dialog->show(); // 这里
}
-
F5
运行调试