我是qt编程的新手,所以如果你发现它是一个noob问题请不要介意.我在主窗口中添加了一个按钮,但是当我运行代码时,按钮不会显示.这是我的代码:
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtWidgets>
MainWindow::MainWindow(QWidget *parent)
{
QPushButton *train_button = new QPushButton(this);
train_button->setText(tr("something"));
train_button->move(600, 600);
train_button->show();
}
Run Code Online (Sandbox Code Playgroud)
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
MainWindow::~MainWindow()
{
delete ui;
}
Run Code Online (Sandbox Code Playgroud)
我该怎么办?
我正在创建一个面部识别应用程序,它在检测到面部时绘制矩形.目前,所有的计算都是在主线程上完成的,因为它耗尽了大量的CPU.我决定在不同的线程上运行计算.现在问题是,是否可以从后台线程本身绘制画布?或者我必须将参数发送到主线程,然后从那里绘制画布?
通过在我定义的线程的主体中调用该函数,是否可以在不同的线程中执行函数?
Thread background = new Thread(new Runnable() {
public void run() {
mCamera.addCallbackBuffer(data);
}
});
background.start();
Run Code Online (Sandbox Code Playgroud)
我可以这样做吗?