Qtが新しく、wavファイルを計画できる簡単なqtクラスを作成しようとしていました。 読んで見回した後、私はクラスを書きました。コードは以下の通りです。音は今のplayed.Asになると、私は、アプリケーションを閉じたいQtでシンプルなサウンド(.wav)アプリケーションを再生する(C++)
1):質問はplaysound.cppのソースコード
#include "playsound.h"
playSound::playSound(QWidget *parent): QWidget(parent) {}
playSound::~playSound() {}
void playSound::playwav(int ch)
{
switch (ch)
{
case 1: {QSound::play("/home/alok/qtworkspace/sounds/abc.wav"); break;}
case 2: {QSound::play("/home/alok/qtworkspace/sounds/xyz.wav"); break;}
case 3: {QSound::play("/home/alok/qtworkspace/sounds/abc.wav"); break;}
case 4: {QSound::play("/home/alok/qtworkspace/sounds/aaa.wav"); break;}
case 5: {QSound::play("/home/alok/qtworkspace/sounds/nnn.wav"); break;}
}
}
問題と質問コードの後
#include <QtGui/QApplication>
#include "playsound.h"
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
playSound w;
int ch = 2;
int ready = 1;
cout<<"ready"<<ready<<endl;
// w.show();
w.playwav(ch);
return a.exec();
}
に従ってくださいプログラムが動作していると言います。Qtクリエイターの "Application Output"エリアの赤いボタンを使って強制的に閉じなければなりません。 Qwidgetからclose()を使い、QApplicationからquit()を試みましたが、おそらく私は間違っています。どのようにこれをabtに行く?
2)この機能の実装は簡単ですか?あなたはイベントループを伴わない何かを知っています。私は古い学校のC++スタイルでそれをやろうとしていました。私はサウンドを演奏してやる必要があるときに関数を呼び出しますが、それをやり遂げることはできませんでした。提案は、これで大歓迎です。
おかげ
ありがとうございます!単純なQThreadやフォノンの実装の例を教えてください。どれが便利であろうと、おそらく私が説明したものに似ています。その間、Qtのドキュメントから何かを理解しようとします。 – Alok