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

Потоки. Конвертация Object

11.04.2012, 13:07. Показов 939. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Пишу на С++ под .net в visual studio 2008

У меня есть форма, в форме есть таблица DataGridView. В таблицу загружается список ip и их портов.
Встала задача , отработать каждую строку в отдельном потоке.
После нажатия некой копки (bnCheckProxy) начинается перебор строк и создания потоков

ThreadPool::QueueUserWorkItem(gcnew WaitCallback(&proxy::Form1::StartThread) ,line);

где line ссылка на объект строки
Метод потока
C++
1
2
3
4
static void StartThread(System::Object ^ line){
        ...
        //соответственно тут могу line перевести к типу System::Windows::Forms::DataGridViewRow
    }
В методе появились трудности , из статичного метода я не могу получить доступ к данным класса, то есть в этом методе не могу изменять данные в таблице. Сказали , что нужно преобразовать System::Object ^ line , не получается не как это сделать -( компилятор пишет что не может преобразовать System::Object в System::Windows::Forms:ataGridViewRow .
В общем то вопрос, как преобразовать System::Object в System::Windows::Forms:ataGridViewRow или как получить доступ из функции потока к таблицы формы.

Сделал так , схемачично

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
......
public ref class Form1 : public System::Windows::Forms::Form
    {
    .....
    void InitializeComponent(void)
    {
    .....
        this->table = (gcnew System::Windows::Forms::DataGridView());
    }  
    .....  
    static void StartThread(System::Object ^ line){
        ...
        //соответственно тут могу line перевести к типу System::Windows::Forms::DataGridViewRow
    }
    private: System::Void bnCheckProxy_Click(System::Object^  sender, System::EventArgs^  e) {
        if (table->RowCount > 0){
            int i = 0;
            for each(System::Windows::Forms::DataGridViewRow^ line in table->Rows)  
            {
                ThreadPool::QueueUserWorkItem(gcnew WaitCallback(&proxy::Form1::StartThread),line);
                i++;
            }
        }
 
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.04.2012, 13:07
Ответы с готовыми решениями:

Uncaught TypeError: Object [object Object] has no method
Всем привет. Я новичок в этой сфере. у меня возникла ошибка в консоли при добавлении карусели на сайт: "Uncaught TypeError: Object ...

Нулевые значения баз данных. Object reference not set to an instance of an object
В базе данных существуют пустые поля. Из базы осуществляется вывод на веб страницу в поля ввода. Поля соответствующие нулевым значениям...

Получение имени объекта. Функция public String getName(Object object) {...}
К примеру есть объекты: Object myObject111 = new Object(); File parentDirectory = new File(); Хочу такую функцию: public String...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.04.2012, 13:07
Помогаю со студенческими работами здесь

Скрипт не работает - NullReferenceException: Object reference not set to an instance of an object MissionSay.S
Нужный элемент со скриптом MissionPlayer.cs есть Версия Unity: 5.4.1 Код: using UnityEngine; using System.Collections;

NullReferenceException: Object reference not set to an instance of an object в FindObjectType как исправить?
Ошибка NullReferenceException: Object reference not set to an instance of an object в FindObjectType как исправить? скрипт 1 public...

Ошибка времени выполнения: Object reference not set to an instance of an object
Программа должна выводить на экран двоичное представление введённого числа. При этом обязательно нужно использовать массив boolean. После...

Ошибка System.NullReferenceException : Object reference not set to an instance of an object
Совсем недавно начал учить C# . Наткнулся на ресурс codewars,где нужно по условию написать код и чтобы он прошел тесты. Код проходит 4 из 5...

Вызов внешних функций. Object reference not set to an instance of an object
Написал обычный dll на С++. Есть в ней функция которая создает объект на удаленном компе и возвращает строку. Есть Web Service, в...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru