Thread View: alt.pl.comp.lang.csharp
9 messages
9 total messages
Started by qaz
Tue, 06 Jul 2010 12:16
textbox - refresh [zielony]
Author: qaz
Date: Tue, 06 Jul 2010 12:16
Date: Tue, 06 Jul 2010 12:16
11 lines
1421 bytes
1421 bytes
Jaki jest mechanizm aktualizowania/wyswietlania tekstu w textBox ? Program w pętli obsluguje (konwertuje) tabele bazy - aby wiedziec co sie dzieje daje: ... this.textBoxAkt.Text = moj_wskaznik_zaaw; this.textBoxAkt.Refresh(); // i bez tej linii zobacze tylko ostatni wskaznik na koniec konwersji ... mozna jakos "nakazac" odswiezanie kontrolek po zmianie zawartosci ? qaz
Re: textbox - refresh [zielony]
Author: Marcin Miga
Date: Tue, 06 Jul 2010 12:22
Date: Tue, 06 Jul 2010 12:22
16 lines
1856 bytes
1856 bytes
On 6 Lip, 14:16, "qaz" <qazvox...@wp.pl> wrote: > Jaki jest mechanizm aktualizowania/wyswietlania tekstu w textBox ? > Program w pętli obsluguje (konwertuje) tabele bazy - aby wiedziec co sie > dzieje daje: > ... > this.textBoxAkt.Text = moj_wskaznik_zaaw; > this.textBoxAkt.Refresh(); // i bez tej linii zobacze tylko ostatni > wskaznik na koniec konwersji > ... > > mozna jakos "nakazac" odswiezanie kontrolek po zmianie zawartosci ? > qaz Właśnie nakazałeś - .Refreshem :) pozdrawiaMM
Re: textbox - refresh [zielony]
Author: Wiktor Zychla
Date: Wed, 07 Jul 2010 07:27
Date: Wed, 07 Jul 2010 07:27
13 lines
1515 bytes
1515 bytes
> this.textBoxAkt.Text = moj_wskaznik_zaaw; > this.textBoxAkt.Refresh(); // i bez tej linii zobacze tylko ostatni > wskaznik na koniec konwersji > ... > > mozna jakos "nakazac" odswiezanie kontrolek po zmianie zawartosci ? > qaz spróbuj Application.DoEvents(); Wiktor Zychla
Re: textbox - refresh [zielony]
Author: Łukasz 'Maly' Ostrowski
Date: Wed, 07 Jul 2010 08:14
Date: Wed, 07 Jul 2010 08:14
23 lines
1564 bytes
1564 bytes
On Wed, 7 Jul 2010 09:27:58 +0200, Wiktor Zychla wrote: >> this.textBoxAkt.Text = moj_wskaznik_zaaw; >> this.textBoxAkt.Refresh(); // i bez tej linii zobacze tylko ostatni >> wskaznik na koniec konwersji >> ... >> >> mozna jakos "nakazac" odswiezanie kontrolek po zmianie zawartosci ? > > spróbuj > Application.DoEvents(); Średni pomysł, lepiej wydelegować long-running-operation do osobego wątku. Blokowanie wątku UI i "symulowanie jego ożywania" DoEvents() może się skończyć różnymi dziwnymi scenariuszami ;-) Dla OP, zainteresuj się: 1. BackgroundWorker lub Thread, oraz 2. Control.InvokeRequired/Invoke -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: textbox - refresh [zielony]
Author: Wiktor Zychla
Date: Fri, 09 Jul 2010 07:36
Date: Fri, 09 Jul 2010 07:36
15 lines
1861 bytes
1861 bytes
> Średni pomysł, lepiej wydelegować long-running-operation > do osobego wątku. Blokowanie wątku UI i "symulowanie jego > ożywania" DoEvents() może się skończyć różnymi dziwnymi > scenariuszami ;-) podobnie - różnymi dziwnymi scenariuszami może skończyć się odpalanie dodatkowych wątków. po prostu zawsze trzeba wiedzieć co się robi. o rozwiązaniu przynajmniej niektórych trudności z DoEvents napisałem kilka lat temu artykuł: http://www.ii.uni.wroc.pl/~wzychla/lengthy.html Wiktor Zychla
Re: textbox - refresh [zielony]
Author: Łukasz 'Maly' Ostrowski
Date: Fri, 09 Jul 2010 08:05
Date: Fri, 09 Jul 2010 08:05
32 lines
2217 bytes
2217 bytes
On Fri, 9 Jul 2010 09:36:46 +0200, Wiktor Zychla wrote: > podobnie - różnymi dziwnymi scenariuszami może skończyć się odpalanie > dodatkowych wątków. Z reguły jak ktoś nie wie co czyni to kończy się ,,tylko" Cross Thread UI Operation Exception ;-). > po prostu zawsze trzeba wiedzieć co się robi. Zgoda. Wystarczy poznać model UI w .NET i synchronization primitives najprostsze, żadnych wielkich filozofii a poprawność jest stanowczo większa niż DoEvents() - tymbardziej że do elementarnych scenariuszy wystarczy Invoke/lock/wait-handle/semafory/mutexy ;-). > o rozwiązaniu przynajmniej niektórych trudności z DoEvents napisałem kilka > lat temu artykuł: > > http://www.ii.uni.wroc.pl/~wzychla/lengthy.html Rozwiązania problemu za pomocą hacków są podejrzane IMO ;-). Z luźnych uwag jakie mam po przejrzeniu artykułu: 1. "Desktop applications are usually single-threaded." - na chwile obecną to jest mało prawdziwe, zastąpiłbym usually -> rarely ;-). No chyba że mówimy o calc/notepad/hello world. 2. if (mb.GetCustomAttributes(typeof(Uninterruptible), true).Length > 0), stanowczo bardziej spójnie. 3. *uninterruptible* ;-). -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: textbox - refresh [zielony]
Author: Wiktor Zychla
Date: Fri, 09 Jul 2010 09:13
Date: Fri, 09 Jul 2010 09:13
6 lines
1459 bytes
1459 bytes
> Z luźnych uwag jakie mam po przejrzeniu artykułu: artykuł ma jakieś 6 lat. pozdrawiam uprzejmie, Wiktor Zychla
Re: textbox - refresh [zielony]
Author: Łukasz 'Maly' Ostrowski
Date: Fri, 09 Jul 2010 09:57
Date: Fri, 09 Jul 2010 09:57
18 lines
1561 bytes
1561 bytes
On Fri, 9 Jul 2010 11:13:18 +0200, Wiktor Zychla wrote: >> Z luźnych uwag jakie mam po przejrzeniu artykułu: > > artykuł ma jakieś 6 lat. Dlatego otagowałem uwagi jako luźne ;-). Abstrahując, przejrzałem Kolegi program zajęć na 2009/2010, i powiem szczerze że bardzo mi się ten model podoba, cały semestr 2-gi ze szczegółowym opisem iteracji/refactor'ów brzmi dydaktycznie rewelacyjnie. p.s. Studenci sobie z tym radzą? ;-). -- Pozdrawiam, Łukasz 'Maly' Ostrowski. http://l3v.pl/
Re: textbox - refresh [zielony]
Author: Wiktor Zychla
Date: Fri, 09 Jul 2010 11:04
Date: Fri, 09 Jul 2010 11:04
6 lines
1510 bytes
1510 bytes
> p.s. Studenci sobie z tym radzą? ;-). radzą. i, jak odnoszę wrażenie, też im się to podoba :) pozdrawiam Wiktor Zychla
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads