🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #21677

Re: Własne okno dialogowe singleton, wywoływane z wątków?

#21677
From: gomis
Date: Fri, 09 Jul 2010 11:46
37 lines
2702 bytes
> Delphi powoduje całą mase złych nawyków ;-). Począwszy od globalnego:
> var
>  frmMain : TMainForm;

Sam widzę, że mam ciągoty jak napisałeś typu:

> var
>  frmMain : TMainForm;

Też myślałem o wyrzucaniu okna dialogowego z głównego wątku, ale... znowu 
pod górę. Nie wiem jak podpiąć się pod główny wątek.
W Delphi jest

    Application.OnIdle:=MyOnIdle;  //  MyOnIdle - moja jakaś procedura
a dokładanie do Timerka wydaje się być mało estetyczne.
Mam jeszcze jedne problem (aż wstyd powiedzieć, ale takie są początki) nie 
wiem jak wymieniać dane między "niezależnymi" klasami.
Jak już wcześniej przytoczona sławna konstrukcja
> var
>  frmMain : TMainForm;
daje swobodę wymiany między formami to jedynie na tą modłę znalazłem 
Singleton.
Jeśli chodzi o wątek główny to myślałem o budowie klasy class MojeAlerty, do 
której wątki wrzucały by txt do wyświetlenia a następnie a główny sprawdzał 
by czy nie trzeba wyświetlić okna lub już otwarte okno zaktualizować nowym 
tekstem. Lecz klasa  MojeAlerty powinna mieć tylko jedną instancję w cały 
programie a przekazywanie jej wskaźnika do innych klas a od tych klas do 
innych klas ... przez konstruktora też mi się nie podoba. Jakbym nie 
kombinował to przy obecnym stanie wiedzy najbardziej pasuje mi Singleton. 
Nie potrawie oderwać się (jeszcze nie wiem jak) od zmiennej globalnej.
Wiem, że powinienem oprzeć się na delegatach, ale jeszcze tego nie czuję.

Nie przewiduję okien modalnych.

Pozdrawiam,
    gomis. 
Technical Details
Message-ID: <i1727b$l75$1@news.task.gda.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.task.gda.pl!not-for-mail
References: <i16n72$pkd$1@news.task.gda.pl> <145nh32fpp3hh.pzydy3jgp3q4$.dlg@40tude.net> <i16upn$flp$1@news.task.gda.pl> <1kiaznfyb7y4e$.1qapzsrkhzesd.dlg@40tude.net>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.task.gda.pl!not-for-mail
From: "gomis" <gomis@poczta.onet.pl>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: Własne okno dialogowe singleton,
 wywoływane z wątków?
Date: Fri, 9 Jul 2010 13:46:44 +0200
Organization: CI TASK http://www.task.gda.pl/
Lines: 39
Message-ID: <i1727b$l75$1@news.task.gda.pl>
References: <i16n72$pkd$1@news.task.gda.pl> <145nh32fpp3hh.pzydy3jgp3q4$.dlg@40tude.net> <i16upn$flp$1@news.task.gda.pl> <1kiaznfyb7y4e$.1qapzsrkhzesd.dlg@40tude.net>
NNTP-Posting-Host: gomis.satel.pl
X-Trace: news.task.gda.pl 1278676011 21733 89.171.63.240 (9 Jul 2010 11:46:51 GMT)
X-Complaints-To: abuse@news.task.gda.pl
NNTP-Posting-Date: Fri, 9 Jul 2010 11:46:51 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit