|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.01.2010, 20:34 | #1 | |
Регистрация: 22.11.2008
Сообщений: 4
|
Передача параметров обьектам из разных потоков(работа с Thread)
Здраствуйте! Помогите пожалуйста решить такую проблемку!
Необходимо изменить значение параметров кнопки Button(Button.Location = new System.Drawing.Point(X, Y) через обьект Thread. Для этого я пытался привязать процедуру mm() к потоку, код следущий: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public void mm() { Цитата:
private void button1_Click(object sender, EventArgs e) { Thread tre = new Thread(mm); tre.Start(); } } } Получаем следущую ошыбку: Не может изменить параметры обьекта созданного в другом потоке. Строго не судите, я в сишке новичок! Сдесь нужно применить делегаты, для безопасного вызова метода mm(), только вот как???? Последний раз редактировалось B@ND!T; 27.01.2010 в 20:42. |
|
27.01.2010, 23:09 | #2 |
Форумчанин
Регистрация: 16.02.2009
Сообщений: 555
|
Так нельзя наверно!"button1" не из того потока, в котором он был создан
|
27.01.2010, 23:37 | #3 |
Регистрация: 22.11.2008
Сообщений: 4
|
Вопрос исчерпан! Все решено таким кодом с помощью делегата кнопки:
Код:
Последний раз редактировалось Sazary; 31.01.2010 в 23:29. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
передача параметров в createprocess | Consol | Win Api | 11 | 12.05.2010 13:49 |
Передача параметров | aesoem | Общие вопросы Delphi | 8 | 15.07.2008 21:51 |
Передача параметров | Gudzon | Общие вопросы Delphi | 12 | 08.02.2007 08:19 |