Zawartość pola textbox do tablicy

0

Witam! Chciałbym się poradzić, czy istnieje możliwość zapisania zawartości pola tekstowego do tablicy? Chodzi o wpisane w textbox liczby oddzielone od siebie spacjami, by każda z nich była elementem przypuśćmy, że tablicy tab(n)?

3

Istnieje. string.Split, żeby podzielić napis i Array.ConvertAll / IEnumerable<T>.Select, żeby zamienić tablicę napisów na tablicę liczb (int.Parse).

0

Chodzi o użycie vb.net. Mogę prosić o pomoc w rozwiązaniu tego przykładu?

txtLiczby.Text = "5 10 15 20 25"
Dim Liczby As String = Split(txtLiczby.Text) '??????
Dim tab(5) As Double

'Co z ConvertAll???

For Dim i As Integer = 0 To 5
tab(i) = '.....????
Next
2

Znajdź w MSDN opis metod, które podałem. Programowanie nie polega chyba na zgadywaniu.

0

Rozumiem, że użycie wymienionych przez Ciebie funkcji, to jedyna metoda na rozwiązanie problemu?

0

Ale, ale IMO najprostsza, bo sprowadza się do wywołania trzech metod w jednej linijce.

0

Nie udało mi się wykorzystać wszystkich wspomnianych przez Ciebie funkcji...

Dim wyrazya As String = txtLos.Text
        Dim tablicaa() As String = wyrazya.Split(" ")

gdzie:

 txtLos.Text = "5 10 15 20" 

Te elementy są dobrze tablicowane w tablicaa, jednak aby móc użyć każdego z nich, muszą być typu Double. I tu rodzi się mój problem konwersji... Gdybym na przykład zechciał użyć drugiego elementu do obliczeń:

Dim a As Double = tablicaa(2)
WartFunk = WartoscCiagu(m, wznx, a)

Funkcja WartoscCiagu jest typu double:

Function WartoscCiaguTabela(ByVal ilosc As Integer, ByVal X As Double, ByVal a As Double) As Double
Dim s As Double
....
return s
End Function
1

No i do tego możesz użyć Array.ConvertAll.

Dim tablicaDoubli() As Double = Array.ConvertAll(napis.Split(" "), Function(str As String) Double.Parse(str))
0

http://msdn.microsoft.com/en-us/library/exc45z53.aspx#Y0
Za jej pomocą możesz cało tablicę, jej wszystkie elementy przekonwertować z jednego typu na inny.

0
Rev napisał(a)

No i do tego możesz użyć Array.ConvertAll.

Dim tablicaDoubli() As Double = Array.ConvertAll(napis.Split(" "), Function(str As String) Double.Parse(str))

Input string was not in a correct format.
Wartość pola tekstowego nie jest pusta, zawiera liczby oddzielone spacjami; w czym więc może tkwić problem?
Pole tekstowe zostaje wypełnione przy wywołaniu funkcji w Subie obsługi przycisku, tablica zaś jest konwertowana we wspomnianym subie.

Mój kod dla powyższych moich linijek wygląda następująco:

 Dim wyrazya As String = txtLos.Text
        Dim tablicaDoubli() As Double = Array.ConvertAll(wyrazya.Split(" "), Function(str As String) Double.Parse(str)) 

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