Najlepszy pomysł na robienie komunikatów

0

Mam program. Jakoś to to działa. Teraz jednak chcę wymyślić najprostszy i najszybszy sposób, żeby zrobić alerty z przyciskiem okej. Jak do tej pory na formatkę wrzuciłem w odpowiednie miejsce dwa panele i na nich odpowiednie komunikaty. Jednak to rozwiązanie ma wadę, bo jeśli chcę coś po zmieniać na formatce, to muszę (głupota) przesuwać te panele z komunikatami. Jest oczywiście inny sposób, żeby napisać te alerty z palca. Wtedy bym nie widział ich na formie. Ale może jest jakiś lepszy pomysł?

0

Ale generalnie o co chodzi? W jakiej technologii? WPF? WinForms? Jakie alerty? Nic nie wynika z tego co napisałeś :)

0

Tak, tak. Win form. Alerty tzn. takie komunikaty, które się pojawiają, gdy użytkownik chce wykonać operacje nie możliwą do zrobienia. Na komunikacie jest info i przycisk okej, który powoduje, że komunikat znika.

0

No to przecież zwykły MessageBox starczy.

1

@finito - wróćmy może do postów, skoro toczymy dyskusję na temat.

MessageBox służy do wywoływania domyślnych systemowych okienek informacyjnych. Nie możesz ich w żaden sposób kolorować ani zmieniać im stylu. Skoro piszesz aplikacje dla słabowidzących (btw, powinieneś o tym wspomnieć w pierwszym poście, bo to jest bardzo istotne), to sam musisz swoje własne okienka stworzyć. Tylko zrób je jako nowe Formy w projekcie, nie jako pokazujące się/ukrywające panele, bo to jak już sam zauważyłeś, utrudnia pracę.

0

No właśnie chciałem je zrobić na nowych formach, ale nie bardzo wiem jak zrobić taką podstawową rzecz, która polega na tym, że klikam ok w tej nowej formie i ta cała forma znika. Jak to zrobić? Bo samą instancję stworzyłem w pierwotnej formie projektu, zrobiłem show() i super, ale w nowej formie...no właśnie, przecież w kodzie nowej formy tamtej instancji z kody formy projektu, już nie widać. I co z takim fantem zrobić? To może zabawne, ale nie bez powodu stworzyłem ten wątek w newbe.

1

Żeby zamknąć formę wystarczy w kodzie obsługującym przycisk wywołać this.Close();. Dodatkowo warto ustawić this.DialogResult = DialogResult.Ok, tak by móc z tej wartości skorzystać w kodzie głównej formy.

0

Racja. Już się właśnie przed sekundą domyśliłem, że trzeba dać this.Close(). Dziękować;-) Dalej próbuję sam.

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