Zmiana kolorystyki formatki

0

Witam serdecznie!

Zastanawiam się jak w sensowny sposób zrealizować następującą sprawę:

Mam aktywną formatkę - nazwijmy ją Main.
Otwieram drugą formatkę - nazwijmy ją Child.
Po otwarciu formatki Child (jako "dialogowa"), nieaktywna formatka Main powinna zmienić kolorystykę np na skalę szarości. Czy jest jakiś bardziej elegancki sposób niż zmiana ustawień każdej kontrolki :-D ?

Pozdrawiam

0

ale po co chcesz jej zmienic kolorystyke?
o to dba windows (zmiana paska tytulu)

rozumiem ze child pokazujesz jako dialog modalny, wiec i tak nie mozna przelaczyc sie na main

generalnie jakbys nie kombinowal i tak musisz zmienic wyglad main, a pozniej go przywrocic
sposobow moze byc wiele
eventy: Activated, Deactivate odpalaja sie m.in. na main kiedy modalne okno sie wyswietla, ale tez jak forma tracji i zyskuje fokus, wiec moze nie sa najlepszym rozwiazaniem

0

Wiem wiem, że o to dba Windows, a zdarzenia activated i deactivated jak najbardziej są na miejscu. Chodzi mi tylko o to, że: formatka Main jest wyświetlana na pełnym ekranie - są ukrywane obramowanie oraz pasek systemowy. Chciałbym, aby CAŁA formatka zmieniała kolor na odcienie szarości gdy jest nieaktywna - taki mały bajer wizualny. Nie chodzi mi tu o to jakie zdarzenia wykorzystać tylko jak w efektywny i szybki sposób zrealizować taki efekt zmiany kolorów. Zmiana kolorystyki formy i każdej z kontrolek się na niej znajdującej nie wygląda zbyt dobrze - widać jak się przerysowują :-|

0

zrób screena kontrolki ;-P
zamien screena na odcienie szarosci
zakryj kontrolke jakimś komponentem
i narysuj przerobionego screena na nim
(forma ma być nie aktywna więc można to tak sobie zrobic ) :D

screen : http://www.csharphelp.com/archives2/archive393.html
skala szarości Greyscale

0

Pomysł całkiem fajny :-P ,ale chodzące w tle wątki cały czas modyfikują zawartość formy Main i te modyfikacje mają być widoczne dla użytkownika, więc zakrycie screenem raczej odpada. Jakieś inne sugestie ( w starych dosowych czasach :-| można było np modyfikować palete kolorów)

0

W tym artykule jest pokazane jak to zrobić przy pomocy tworzenia Bitmapy w odcieniach szarości jak to zaproponował Piotrekdp.

W komentarzach do artykułu jest też podany inny pomysł jak to rozwiązać:

I am using a different solution with a similar effect:

I create a transparent (Opacity=60 percent) form on top of the parent form.
The overlay form gets the same frame style etc as the parent.
This gives the entire parent form a nice disabled effect (not completly grey, still some colors visisble)

Cheers

0

Dokładnie takie rozwiązanie (przykrywanie formy formą) mam od pewnego czasu u siebie. Jestem ciekaw czy można to załatwić w jakiś inny sposób.

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