QAudioInput で音声を録音しようとしています。このウェブサイトQAudioInputのドキュメントによると。しかし、実行すると、空の生ファイルがエクスポートされました。確認したところ、関数 QTimer::singleShot が機能していないようです (ステートメントを追加qWarning << "Done"
しvoid stopRecording()
、「完了」が表示されなかったので、 QTimer::singleShot 関数に何か間違いがあると思いました)。
これは、関数 QTimer::singleShot をチェックするために使用される私のコードです
----Check.pro----
QT += core
QT -= gui
TARGET = Check
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
HEADERS += test.h
-----test.h------
#ifndef TEST_H
#define TEST_H
#include <QCoreApplication>
#include <QTimer>
#include <iostream>
#include <QObject>
#include <test.h>
#include <QDebug>
using namespace std;
class Object: public QObject {
Q_OBJECT
private slots:
void func() { cout << "Hello"; }
};
#endif // TEST_H
----main.cpp----
#include <QCoreApplication>
#include <QTimer>
#include <iostream>
#include <QObject>
#include <test.h>
#include <QDebug>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Object *o = new Object;
QTimer::singleShot(10000, o, SLOT(func()));
return 0;
}
そして、このコードも機能しません。誰でも説明できますか?私は Qt プログラミングの初心者です。