私に許してください。これは非常に単純な質問になる可能性が高いことを知っていますが、別の目が必要です。私は自分のGUI上でチェックボックスを持っており、ボックスの状態(オン/オフ)が私の割り込みサービスルーチンを直接変更します。これは超簡単なようだが、私は使用することはできません。バリデータとしてQCheckBoxの状態を確認していますか?
this->ui->checkBox_2->isChecked();
を、このためには、それを超えて 「非メンバ関数である 『私は保存しようとしました』の無効な使用」の私のISRと呼ぶことができるいくつかのポインタまたは変数へのstateChanged(int arg1) の値ですが、私は範囲の問題を抱えていると思います。 何か提案を歓迎します!
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(this->ui->pushButton_8,SIGNAL(clicked()),this,SLOT(on_pushButton_8_clicked()));
//connect(this->ui->checkBox_2,SIGNAL(clicked(bool)),this,SLOT(myInterruptRIGHT));
//connect(this->ui->checkBox_2,SIGNAL(clicked(bool)),this,SLOT(myInterruptLEFT));
// connect(on_checkBox_2_stateChanged(int arg1)(),SIGNAL(clicked(bool checked)),this,SLOT(myInterruptRIGHT));
ui->pushButton->setText("STOP");
ui->verticalSlider->setMinimum(6);
ui->verticalSlider->setMaximum(8);
}
void MainWindow::on_checkBox_2_stateChanged(int arg1)
{
QCheckBox *cb2 = new QCheckBox;
connect(cb2,SIGNAL(stateChanged(int)),this,SLOT(on_checkBox_2_stateChanged(int)));
int sensor = digitalRead(23);
//Does a bunch of stuff
}
void myInterruptRIGHT (void)
{
//if(this->ui->checkBox_2->isChecked())
if(ui->checkBox_2->isChecked())
{ //Does stuff
}
else
{ //more stuff
}
}
PI_THREAD(RightTop)
{
for(;;)
{
wiringPiISR(23,INT_EDGE_RISING,&myInterruptRIGHT);
}
}
私は、私は別のものの束をテストしてきたし、何も非常に有効であることが分かっていない、sloppishコードをお詫び申し上げます。
それで、私はそれを試みましたが、そのようになるかもしれませんが、2つの同様のエラーが発生しています: '引数リストなしでQAtomicIntegerの無効な使用'。私は今のところ、あなたがそこに投げ込んだもので走り、結果が出たらそれを変更するかもしれないと考えました。 – jhizzla
ああ、私はQt atomic int useを修正しようとする必要があります。 – AlexanderVX
QAtomicIntegerではなくQAtomicIntを使用します。 – AlexanderVX