wtorek, 19 kwietnia 2011

Ukrywanie głównego okna programu w Visual Studio 2010

Ostatnio troszkę się męczyłem z uzyskaniem efektu aplikacji działającej w tle. Pisałem program, który miał działać w tle, a jedyną informacją o jego działaniu miała być ikonka w zasobniku systemowym (of kors z podpiętym menu).
Zamierzony efekt udało się osiągnąć dopiero po zabawie z przezroczystością.
W związku z tym, że było to główne okno, Hide() w ogóle nie dawał się uruchomić w konstruktorze czy po załadowaniu (event Load). W sieci znalazłem próbę rozwiązania (po wypowiedziach sądzę, że działającą), która jednak w przypadku mojego projektu nie działa.
Po przeprowadzeniu wielu prób, doszedłem do tego, że ustawienie właściwości Opacity dla formy na 0% (lub 0.0d) powoduję, że jest ona ukryta przed użytkownikiem. Ukryta, tzn. znika całkowicie (łącznie z utratą focusu) z przestrzeni roboczej. Oczywiście nadal w tle jest aktywna.