Uruchamianie formy w osobny wątku

Odpowiedz Nowy wątek
2006-09-12 15:36
0

Witam. Mam sobie swoja glowna forme... i chce uruchomic inna forme w osobnym wątku.
Pytanie za 100 pkt: jak to osiągnąc w jednej funkcji? Nie chce tworzyc dodatkowej funkcji tylko po to by wywolala ona mi showdialog().


Senior Full Stack Developer .NET & Angular

Pozostało 580 znaków

2006-09-12 18:12
0

Niespecjalnie sie da, bo ShowDialog nie pasuje do delegacji ThreadStart (nie zwraca void), wiec innego pomyslu jak stworzenie nowej metody nie mam. Chyba, ze tworzysz formatke dziedziczac z Form, to mozesz sprobowac przeladowac ShowDialog, ale watpie czy zadziala.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-09-12 19:46
0

Co prawda to jest tworzenie nowej metody no ale moze sie nada taka postac :P


Form Form = new Form();

        new System.Threading.Thread(
            new System.Threading.ThreadStart(
                delegate { Form.ShowDialog(); }
            )
        ).Start();

Pozostało 580 znaków

2006-09-12 20:53
0

Nie nada sie, z powodu, o ktorym pisalem powyzej.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-09-13 09:27
0

Ale co to ma do rzeczy? Co prawda w tym kodzie jest stworzona nowa metoda ale mysle, ze zalozenie bylo takie zeby to jakos ladnie napisac zamiast tworzyc "normalna", metode z nazwa... A no i to jest >= .NET 2.0

VV [soczek]


Pozostało 580 znaków

2006-09-13 09:55
0

Sorki, nie zauwazylem tam tego delegate. Zwracam honor :)

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-09-14 10:32
0

Sprytne... akurat udalo mi sie przekonac szefostwo do .net 2.0 i wlasnie o taki trick mi chodzilo :)

Mozecie cos wiecej powiedziec na temat tego delegata? Do tej pory uzywalem ich tylko jako typy funkcji do zaimplementowania np w callback'ach i tak nie do konca rozumiem co sie dzieje w miejscu parametru ThreadStart.

Czy da sie teraz z ShowDialog jakos uzyskac zwracana wartosc? (tak, tylko z ciekawosci)


Senior Full Stack Developer .NET & Angular

Pozostało 580 znaków

2006-09-14 12:54
0

Tutaj delegate ma troche inne znaczenie niz typy *Delegate. Tworzy on po prostu wskaznik (typ Delegate :P) na funckje ktorej implementacja jest miedzy klamrami (umieszczasz tam kod jak w "normalnej" funkcji).

Co do do tej wartosci, da sie, jak mowilem, miedzy klamrami jest implementacja funkcji (pozwole sobie to nawet nazwac implementacja watku), czyli mozesz tam zrobic co ci sie podoba :)


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0