Druga forma
Tworząc jakiś większy projekt, jedna forma często nie wystarcza. Programista musi więc dodać nową formę do swojego projektu. Często takich form w jednym projekcie jest bardzo wiele.Jak dodać następną formę ? W Visual Studio w menu Project otwieramy Add Windows Form...
Możemy też nadać jej nazwę. Zostawimy jednak tak jak sugeruje program czyli Form2.vb
Uruchamiamy nasz program ale widać jedynie 1 formę, więc gdzie jest druga ? Trzeba najpierw zainicjować jej otwarcie. Na pierwszą formę wstawmy więc button. W kodzie buttona wpiszmy:
Form2.Show()Teraz możemy pracować również na drugiej formie!
Na Form1 dodajmy jeszcze jeden przycisk a w jego kodzie wpiszmy:
If Form2.Visible = True Then Form2.Visible = False ElseIf Form2.Visible = False Then Form2.Visible = True End IfCo się dzieje? przyciskając Button2 forma pojawia się i znika. Znika co nie znaczy, że jest wyłączona. Po prostu jest dla nas niewidoczna.
Forma sama w sobie też ma sporo swoich właściwości. Wystarczy spojrzeć w okno properties.
Funkcja sprawdzająca dane
Mieliśmy już do czynienia z konwersją danych, możemy zatem sprawdzić co zawiera zmienna gdy próbujemy ją podstawić do konwersji np:Dim value As Integer If IsNumeric(TextBox1.Text) Then value = TextBox1.Text value = CInt(value) MessageBox.Show("Twoja liczba to " & value) Else MessageBox.Show("Nie wpisałeś poprawnej liczby", "Błąd", MessageBoxButtons.OK) End IfFunkcja IsNumeric zwraca wartość True jeżeli jej argumentem będzie liczba lub łańcuch składający się z samych cyfr.
Wyobraźmy sobie sytuacje gdy do TextBox1 wpiszemy coś innego niż cyfry, np. "Niedziela"
W normalnych warunkach (bez funkcji sprawdzającej) program zgłosił by błąd próby konwersji typu "Niedziela" na typ Integer. Program by się wysypał i do widzenia...
Zmienna value najpierw więc trafia do funkcji sprawdzającej czy jest liczbą, a ta z kolei znajduje się wewnątrz instrukcji warunkowej If, która pozwoli wykonać konwersję tylko i wyłącznie wtedy, kiedy zmienna value będzie zawierała liczbę.
Takich funkcji sprawdzających można używać jako pułapki na błędy użytkownika.
Można by powiedzieć, że powyższa instrukcja jest równoważna z tą poniżej ponieważ wykona taki sam kod w przypadku niepowodzenia.
Try Dim value As Integer value = TextBox1.Text value = CInt(value)
MessageBox.Show("Twoja liczba to " & value) Catch ex As Exception MessageBox.Show("Nie wpisałeś poprawnej liczby", "Błąd", MessageBoxButtons.OK) End Try
Załóżmy, że do TextBoxa nie wpisaliśmy nic i nacisnęliśmy Button. Value wówczas posiada wartość "". Jeśli byśmy chcieli w tym przypadku zareagować na taką ewentualność, to możemy dołożyć kolejny warunek If, który wykonałby dodatkowy blok kodu. Zobaczmy:
Dim value As Integer If TextBox1.Text = "" Then MessageBox.Show("Nic nie wpisałeś", "błąd", MessageBoxButtons.OK) Else If IsNumeric(TextBox1.Text) Then value = TextBox1.Text value = CInt(value) MessageBox.Show("Twoja liczba to " & value) Else MessageBox.Show("Nie wpisałeś poprawnej liczby", "Błąd", MessageBoxButtons.OK) End If End IfDla rozwiania wszelkich wątpliwości przetłumaczmy sobie powyższy kod:
Jeśli TextBox1 będzie pusty to wyświetli nam komunikat o tym, że nic nie wpisaliśmy. W innym przypadku sprawdzi czy TextBox1 zawiera liczbę. Jeśli tak to przypisze zmiennej value łańcuch tekstowy TextBox'a, zmienna zostanie przekonwertowana na typ Integer i wyświetlony zostanie komunikat z numerem twojej wpisanej liczby. W przeciwnym razie wyświetli komunikat o wpisaniu niepoprawnej liczby.
Do najczęściej używanych funkcji sprawdzających należą jeszcze
- IsNothing - zwracającą True jeśli testowana zmienna ma wartość Nothing
- IsDate - zwracająca True jeśli testowana zmienna jest datą
- IsDBNull - zwraca True jeśli komórka bazy danych zwraca wartość null
- IsArray
- IsError
- IsReference
- IsInputKey
- IsInputChar
Utworzono 09.09.2015
Ten komentarz został usunięty przez autora.
OdpowiedzUsuń