У меня есть форма Windows с функцией, которая запускается при нажатии btnStart .Он имеет бесконечный цикл и должен быть остановлен при повторном нажатии кнопки.Проблема в том, что форма Windows перестает отвечать на запросы при запуске цикла, поэтому я использовал код Thread, который я нашел во время поиска в Google.Но оно имеет ошибку выражение должно быть lvalue или обозначение функции .Я искал эту ошибку, но вопрос отличается от моего (я имею в виду поток не используется).Ниже мой код:
bool isStarting = false;
private: System::Void btnStart_Click(System::Object^ sender, System::EventArgs^ e) {
if (isStarting) {
isStarting = false;
groupBox1->Enabled = true;
btnStart->Text = "Start";
}
else {
isStarting = true;
groupBox1->Enabled = false;
btnStart->Text = "Stop";
fear f(handle, base_addr);
runCode(base_addr ,hwnd, f);
Thread ^thr1 = gcnew Thread(gcnew ThreadStart(&MyForm::runCode(base_addr, hwnd, f)));
thr1->Start();
}
}
void runCode(long base_addr, HWND hwnd, fear f) {
while (isStarting) {
//long code here
}
}
Ошибка на & MyForm :: runCode .Пожалуйста, помогите им просто новичок в Visual C ++