Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 25.06.2021
Сообщений: 4

Потоки

07.03.2022, 22:53. Показов 778. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В форме есть функция, которая должна выполняться при нажатии кнопки. Как сделать ее выполнение в другом потоке? Функция с параметрами и должна выводить с каждым циклом информацию в textBox.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void func(int a, int b, string c)
           {
               for (int i = a; i <= b; i++) {
 
                           MyForm::textBox1->Text += Environment::NewLine +c;
 
               };
 
             
           };
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
 
func(range1,range2, message);
};
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.03.2022, 22:53
Ответы с готовыми решениями:

Потоки
Приветствую. Возникла проблема: Программа проделывает действия с файлами, анализирует их и выводит статистику на экран. Вывожу...

Forms Потоки
Как реализовать потоки в forms? Напишите пожалуйста пример который реально работает (если вставить в код) visual studio c++

Потоки SerialPort
Накидал на форму элементов, всё работает кроме функции, срабатывающей при получении данных с порта т.е. System::Void...

6
2395 / 1925 / 763
Регистрация: 27.07.2012
Сообщений: 5,569
07.03.2022, 23:55
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void func(int a, int b, string c)
           {
               for (int i = a; i <= b; i++) {
 
                           MyForm::textBox1->Text += Environment::NewLine +c;
 
               };
 
             
           };
 
private: void func() {
    this->func(range1,range2, message);
}
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
    System::Threading::Thread^ t = gcnew System::Threading::Thread(
        gcnew System::Threading::ThreadStart(this, &func));
    t->Start();
};
0
0 / 0 / 0
Регистрация: 25.06.2021
Сообщений: 4
08.03.2022, 00:16  [ТС]
А если переменные создаются по кнопке.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void func(int a, int b, string c)
           {
               for (int i = a; i <= b; i++) {
 
                           MyForm::textBox1->Text += Environment::NewLine +c;
 
               };
 
             
           };
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
int range1=0, range2=0;
string message;
func(range1,range2, message);
};
0
2395 / 1925 / 763
Регистрация: 27.07.2012
Сообщений: 5,569
08.03.2022, 00:25
Цитата Сообщение от foes Посмотреть сообщение
А если переменные создаются по кнопке.
Например, запомнить их в переменных формы.
0
0 / 0 / 0
Регистрация: 25.06.2021
Сообщений: 4
08.03.2022, 12:19  [ТС]
Можно, пожалуйста, на этом примере сделать поток. А то я уже устал. Никак не получается и нигде не могу найти информацию.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void func(int a, int b, string c)
           {
               for (int i = a; i <= b; i++) {
 
                           MyForm::textBox1->Text += Environment::NewLine +c;
 
               };
 
             
           };
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
int range1=0, range2=0;
string message;
func(range1,range2, message);
};
0
2395 / 1925 / 763
Регистрация: 27.07.2012
Сообщений: 5,569
08.03.2022, 13:20
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void func(int a, int b, string c)
           {
               for (int i = a; i <= b; i++) {
 
                           MyForm::textBox1->Text += Environment::NewLine +c;
 
               };
 
             
           };
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
 
func(range1,range2, message);
};
 
int range1=0, range2=0;
string message;
 
private: void func() {
    this->func(range1,range2, message);
}
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
    System::Threading::Thread^ t = gcnew System::Threading::Thread(
        gcnew System::Threading::ThreadStart(this, &func));
    t->Start();
};
0
0 / 0 / 0
Регистрация: 25.06.2021
Сообщений: 4
08.03.2022, 14:09  [ТС]
на строчке string message; пишет член класса управляемый не может относиться к типу класса не управляемый
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.03.2022, 14:09
Помогаю со студенческими работами здесь

Потоки и сети
Здравствуйте! Имеется небольшой мини чат по сети. Надо то бы к этому чату подключалось несколько компьютеров, но при работе программы она...

Windows Form потоки
Подскажите пожалуйста! Почему не создается второй поток? #include &quot;MyForm.h&quot; using namespace System; using namespace...

Потоки: построчно записать в файл информацию из нескольких textBox'ов
Нужно построчно записать в файл информацию из нескольких textBox'ов на форме по нажатию на кнопку. Помогите пожалуйста. #pragma once ...

Потоки: error C3350: System::Threading::ThreadStart: конструктор делегата ожидает 2 аргументов
коротко: public ref class Def : public System::Windows::Forms::Form { public: void Load_Graw (void) ...

Потоки
Мне надо чтобы функция buffer_test() запускалась при запуске программы в отдельном потоке. Пробовал так: ThreadStart...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru