Szybkie szukanie
Słowo kluczowe:
sobota, 11 luty 2012
Start arrow Tips & Tricks arrow Wszystko o MsgBox'ach (Lord P.)
Wszystko o MsgBox'ach (Lord P.) Drukuj E-mail
Napisał Administrator   
wtorek, 24 styczeń 2006
W twoim programie użytkownik na pewno będzie
zmuszony dokonywać wielu wyborów.
Pytanie najłatwiej zadać poprzez msgbox'a.

Składnia:
MsgBox(prompt[, buttons] [, title] [, helpfile, context])

Prompt - tekst wyświetlany w msgboxie
Buttons - przyciski (wyrażone za pomocą tekstu bądź numerów)
Title - tytuł msgboxa (wyświetlany w belce tytułowej)
Helpfile - plik pomocy wyświetlany, gdy użytkownik naciśnie
Help w msgboxie.

Przykład:
Msgbox "Podane hasło jest nieprawidłowe", vbOkOnly, "błąd"


Jeśli jako przyciski wybierzemy np.: vbYesNo wtedy
Należy zaprogramować działania programu po wyborze
Odpowiedniego przycisku przez użytkownika.
Np.:

Dim msg
msg = MsgBox("Zakończyć pracę aplikacji?", vbYesNo, "Pytanie")
Select Case msg
Case 6 'tak
End
Case 7 'nie
Form1.Setfocus
End Select


W powyższym przykładzie dobrze widać Wybór Tak lub Nie.
A jeśli zaprogramujesz sobie msgboxa z przyciskami
Ponów, Powtórz i Zrezygnuj?

Oto tabelka numerów odpowiedzi przycisków, które
Należy umieścić po słowie Case

Przycisk Case Nazwa przycisku

vbOK 1 OK
vbCancel 2 Cancel
vbAbort 3 Abort
vbRetry 4 Retry
vbIgnore 5 Ignore
vbYes 6 Yes
vbNo 7 No

Jeśli zaprogramujemy msgboxa z przyciskiem vbIgnore
to Case równy będzie 5 jeśli użytkownik wciśnie przycisk
Ignoruj (ang. Ignore)

Co zrobić jeśli chcesz zrobić msgboxa ze znakiem zapytania
Oraz przyciskami Tak i Nie. Jednak przyciski vbYesNo
Są bez znaku zapytania, a vbQestion daje tylko przycisk
Ok. A konstrukcja typu vbQestion & vbYesNo nie daje
Efektu. Co zrobić? Wstawić przez wartość liczbową.

Poniżej przedstawiam numery jakie możemy użyć w msgboxie,
Aby zrobić takie przyciski z takimi ikonami jakie chcemy:

0. Czysty z przyciskiem Ok.
1. Czysty z Ok. i Anuluj.
2. Czysty z Ponów, Przerwij i Ignoruj.
3. Czysty z Tak, Nie oraz Anuluj.
4. Czysty z Tak i Nie.
5. Czysty z ponów próbę i Anuluj.
6 - 15. Czysty z przyciskiem Ok.
16. Czerwony "X" z przyciskiem Ok.
17. To samo z Ok. i Anuluj.
18. "X" z Przerwij, Ponów, Ignoruj.
19. "X" z Tak, Nie, Anuluj
20. "X" z Tak i Nie.
21. "X" z Ponów próbę i Anuluj.
22 - 31. "X" z Ok.
32. Znak zapytania z Ok.
33. Znak zapytania z Ok i Anuluj.
34. Znak zapytania z Przerwij, Ponów, Ignoruj.
35. Znak zapytania z Tak, Nie, Anuluj.
36. Znak zapytania z Tak i Nie.
37. Znak zapytania z Ponów próbę i Anuluj.
38 - 47. Czysty z Ok.
48. Wykrzyknik z Ok.
49. Wykrzyknik z Ok i Anuluj.
50. Wykrzyknik z Przerwij, Ponów i Ignoruj.
51. Wykrzyknik z Tak, Nie i Anuluj.
52. Wykrzyknik z Tak i Nie.
53. Wykrzyknik z Ponów próbę i Anuluj.
54 - 63. Czysty z Ok.
64. Informacja z Ok.
65. Informacja z Ok. i Anuluj.
66. Informacja z Przerwij, Ponów i Ignoruj.
67. Informacja z Tak, Nie i Anuluj.
68. Informacja z Tak i Nie.
69. Informacja z Ponów próbę i Anuluj.

Dalsze wartości dają taki sam efekt, ale z innym dźwiękiem.


Oczywiście stosowanie "Informacji" z odpowiedziami tak lub nie
Nie jest stosowne i wprowadza użytkownika w błąd. Jeśli jest
potrzeba dać użytkownikowi wskazówki można zrobić to za pomocą
dwóch msgboxów.

Jeśli wskazówki nie są zbyt długie można to zrobić przy pomocy pytania:

Msgbox "W związku z uaktywnioną funkcją a funkcja b może działać błędnie. _
Kontynuować działanie funkcji a?" ,36 , "Taki sobie program."

Jeśli ominiemy wszystkie elementy nieobowiązkowe, np.

Msgbox "Dzień dobry!"

to jedynym przyciskiem będzie Ok., obrazka z lewej nie będzie,
a tytułem będzie nazwa aplikacji.

A jeśli chciałbyś dać użytkownikowi dłuższe wskazówki, a komputer przełamuje linie po określonej liczbie znaków. Jeśli chcesz przełamać możesz użyć
Specjalnej funkcji:

vbCrLf

w tedy wygląda to tak:

Msgbox "W związku z uaktywnioną funkcją a funkcja b może działać błędnie" & _
vbCrLf & "Kontynuować działanie funkcji a?" ,36 , "Taki sobie program."


Pamiętaj! Jeśli wersja Winsowsów jest inna niż angielska przyciski
(a właściwie napisy na nich) mogą ulec zmianie [Yes - Tak, No - Nie
Skąd my to znamy?]


To chyba już wszystko co da się powiedzieć o msgboxach.

**************************
* Lord P.*
* *
**************************

---

Komentarze

Aby dodać komentarz zaloguj się. Jeśli nie masz konta, załóż je sobie.
Tylko zarejestrowani użytkownicy mogą pisać komentarze.

Powered by AkoComment 2.0!

< Poprzedni   Następny >

Menu główne
Start
Teoria
VB.NET
Api
Tips & Tricks
Warsztat
VBMagazine
Pliki
Forum
Literatura
Ankiety
Linki
Szukaj
Wyślij program
Napisz do nas
Redakcja
Logowanie
Login

Hasło

Zapamiętaj mnie
Nie pamiętasz hasła?
Nie masz konta? Załóż je sobie
Gościmy
Aktualnie jest 35 gości online
Statystyka
Użytkownicy: 11345
Newsy: 237
Odnośniki: 48
Odwiedzających: 4328161
Mambo is Free Software released under the GNU/GPL License.