![]() |
Модераторы: gambit, Partizan |
![]() ![]() ![]() |
|
Verus |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Как сделать подскажите плиз или покажите где прочитать
![]() |
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
||||
|
||||
Verus |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Там написано все в пределах одного класса, т.е. есть доступ для приватных полей, а у меня поток это отделный класс, как достучаться до контролов на форме из него?
|
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
Verus, все поддается одним и тем же правилам. доступ получается точно так же как и в одном потоке но в нескольких классах. т.е. класс из которого нужно изменять форму, должен знать о существовании формы, и иметь доступ к тому что нужно изменять.
|
|||
|
||||
Verus |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
А как лучше всего ему(классу) сообщить о форме? Наследоваться от нее или передать this в класс или есть еще способы?
|
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
читаем в форуме для новичков тему Как обратиться к объекту другой формы.
p.s. очевидно что форма это такой же класс как и всякий другой, поэтому обратиться из одного класса к контролу класса формы это тоже самое что обратиться из одной формы к контролу другой. p.p.s. а что значит наследовать форму? это из каких соображений такое можно делать(я про теорию)? производный класс будет являться формой? будет ее как то расширять? наверняка нет, а значит наследовать ее смысла нету. Это сообщение отредактировал(а) Экскалупатор - 26.10.2009, 14:30 |
|||
|
||||
Verus |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Спасибо большое. Решил просто передавать this формы в класс
![]() |
|||
|
||||
IGV |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 1.4.2008 Репутация: нет Всего: 2 |
не лучшее решение Лучше пропишите в методе, который вызываете из потока. А в UpdateData() - код который нужно выполнить
|
|||
|
||||
tht |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 10.5.2006 Репутация: нет Всего: 1 |
Не знаю... все перечитал что было по ссылкам... так нифига и не работает. а надо тоже самое что и автору вопроса.
даже эти инвоки делал, только не понял нафига они нужны если они не позволяют все равно передать данные из потока одного класса в контрол формы другого класса??? что this'ы что не this'ы толку нет. это класс потоков:
а вот класс формы в котором вызываются или создаются потоки:
Это сообщение отредактировал(а) tht - 4.10.2010, 22:07 |
||||
|
|||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
а что надо менять?
|
|||
|
||||
tht |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 10.5.2006 Репутация: нет Всего: 1 |
не работает this.myFormLink.TextHTML.Text += SR.ReadLine();
типа пытаюсь так обратиться из потока одного класса, для передачи текста(строки), к контролу формы другого класса, но данные не передаются. Это сообщение отредактировал(а) tht - 4.10.2010, 22:15 |
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
ты создаешь новый экземпляр класса формы.
myForm myFormLink = new myForm(); но не показываешь его. какие изменения ты хочешь увидеть? получается что у тебя форма из которой запускается поток и myFormLink никак не связаны Добавлено через 1 минуту и 1 секунду наверное именоль ввиду Response ))) |
|||
|
||||
tht |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 10.5.2006 Репутация: нет Всего: 1 |
ну а как связать ?
|
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 2 Всего: 24 |
я думаю тебе надо почитать и понять что такое this. потом надо понять что в каждом классе(!) свой this. а передать надо как раз этот самый this из формы в класс потоков. в классе потоков надо написать что то вроде
это если передавать ссылку на форму в конструктор класса. а использовать потом через myFormLink.(и чего то там). при этом надо не забыть что если ты хочешь обращаться напрямую к контролу то контрол должен быть public. |
|||
|
||||
tht |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 10.5.2006 Репутация: нет Всего: 1 |
спасибо за отзывчивость... буду дальше пытаться. только уже не сегодня, целый день мучаюсь над этим
![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |