|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
пытаюсь выставить свойства компонента в том же потоке что создал (это точно тот поток) и пишет что доступ из потока не в котором создан контрол. Что за байда? Вроде можно ж так. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:36 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
то есть id потока в котором был вызов конструктора формы и initializecomponents (здесь как раз создаются) равен тому в котором пытаюсь свойства изменить. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:37 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
"Создал форму не в главном потоке" А зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:41 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79"Создал форму не в главном потоке" А зачем? надо. веришь? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:46 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
FatherSql, так можно, код кинь. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:50 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
FatherSqlверишь? Нет, не верю. Как я понимаю, все формы/контролы и т.п., корочЕ, всё UI, должны создаваться в основном потоке приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:51 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
FatherSql, авторто есть id потока в котором был вызов конструктора формы и initializecomponents (здесь как раз создаются) равен тому в котором пытаюсь свойства изменить. нельзя завязываться на id, визически поток (на уровне ОС) поток может быть другим. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:55 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79FatherSqlверишь? Нет, не верю. Как я понимаю, все формы/контролы и т.п., корочЕ, всё UI, должны создаваться в основном потоке приложения. Технически можно по-разному. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:56 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецТехнически можно по-разному Зачем извращаться то? :-) Пытаться работать с UI в многопоточном режиме, если сама UI этого не поддерживает. Я всё пытаюсь добиться от ТС объяснения зачем ему это. Может, есть способ сделать правильнее ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 16:58 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79вопросецТехнически можно по-разному Зачем извращаться то? :-) Пытаться работать с UI в многопоточном режиме, если сама UI этого не поддерживает. Я всё пытаюсь добиться от ТС объяснения зачем ему это. Может, есть способ сделать правильнее Почему? Если у вас есть N потоков, в каждом из которых создана форма, можете обращаться легко и непринужденно из этого потока к соответствующей форме, можно и к другой форме но через InvokeRequired/Invoke например, работающий случай автора Код: 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:04 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецЕсли у вас есть N потоков, в каждом из которых создана форма, можете обращаться легко и непринужденно из этого потока к соответствующей форме, можно и к другой форме но через InvokeRequired/Invoke Э, а нельзя сделать все формы в одном (основном) потоке, а из вторичных к ним обращаться "через InvokeRequired/Invoke"? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:07 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79, это уже совсем другая история и зависит от задач. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:10 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросец, приведенный код помог найти мне ошибку. выражаю благодарность. то есть в принципе все сделал правильно но в одном месте забыл написать в соответствии с последней идеологией (так как когда начинал писать она была другой). А кода было не 2 строки а немного побольше. Все пашет. Возможно все. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:10 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79вопросецЕсли у вас есть N потоков, в каждом из которых создана форма, можете обращаться легко и непринужденно из этого потока к соответствующей форме, можно и к другой форме но через InvokeRequired/Invoke Э, а нельзя сделать все формы в одном (основном) потоке, а из вторичных к ним обращаться "через InvokeRequired/Invoke"? можно, но иногда проще по другому. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:11 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79, Например, есть у вас SCADA клиент, два монитора огромных и несколько окон, отображающих разные техпроцессы, и очень много изменений в единицу времени, отчего не взять да и не запилить по потоку на фурму, чтобы не конкурировали. И т. п.. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:14 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
единственное если кто на скору руку может напишите плиз правильный синтаксис создания делегата на лету, то есть чтото типа control.invoke(new delegate() { label.text = "4"; }); это лямбда, думаю понятно что имею ввиду, вроде так просто не работает. Щас буду искать как правильно написать но если напишите раньше то буду премного благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:16 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецArm79, Например, есть у вас SCADA клиент, два монитора огромных и несколько окон, отображающих разные техпроцессы, и очень много изменений в единицу времени, отчего не взять да и не запилить по потоку на фурму, чтобы не конкурировали. И т. п.. Это стандартная практика? Или ваше ноу-хау? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:23 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
FatherSql, Код: 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:27 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Arm79, А в чем заключается ноу хау? Это стандартные тех возможности :). ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:28 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецFatherSql, + Код: 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
это как раз геморойная запись, можно сразу на месте писать без промежуточного кода и лишних переменных ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:30 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецзаключается ноу хау? Это стандартные тех возможности :). Хм... Буду знать, что еще и так можно применять. Обычно я делал всё UI в основном треде, а из вторичных - нотификацию. Раньше это было через PostMesage. На Net никаких сложных интерфейсов не рисовал, всё как то в одном потоке помещалось :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:33 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вот так вот: Код: c# 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:35 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
FatherSql, Так прокатит? Invoke(new Action<string>(msg => { label1.Text = msg; }), new object[] { MSG }); ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:36 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
Invoke(new Action(() => { label1.Text = MSG; })); ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:38 |
|
Создал форму не в главном потоке
|
|||
---|---|---|---|
#18+
вопросецArm79, Например, есть у вас SCADA клиент, два монитора огромных и несколько окон, отображающих разные техпроцессы, и очень много изменений в единицу времени, отчего не взять да и не запилить по потоку на фурму, чтобы не конкурировали. И т. п.. пипец.... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 17:39 |
|
|
start [/forum/topic.php?fid=20&fpage=178&tid=1405253]: |
0ms |
get settings: |
13ms |
get forum list: |
16ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
88ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 199ms |
0 / 0 |