Kezdőoldal » Számítástechnika » Programozás » Visual basicban hogy lehet...

Visual basicban hogy lehet szöveget szétválasztani?

Figyelt kérdés
Pl.:egy textbixban van :1,2 akkor ha lenyomok egy gombot az 1es az egyik labelen legyen a 2es meg a másikon.

2015. máj. 14. 17:02
 1/3 tabaki ***** válasza:
Nem ismerem a Visual Basicet, de ebben az egyszerű esetben elég a szöveg első és utolsó karakterét beraknod a két labelbe. Ezt a klasszikus basicben megcsinálhattad a Left$() és Right$() függvényekkel, szerintem valami hasonló a VB-ben is van. Ha nemcsak két karaktered van, esetleg egy változóban számon tarthatod, hogy megtaláltad-e a vesszőt. Egy ciklussal végiglépdelsz a szöveg karakterein, ha még nem volt vessző, az első címke szövegéhez adod, ha vesszőt találsz, beállítod, hogy volt, és ha már volt, a másik címke szövegéhez adod. De valószínű, hogy létezik olyan függvény, amellyel meghatározhatod, hagy a vessző hányadik karakter a sorban, akkor a szöveg elejétől a vessző előtti karakterig tartó szövegrészt teszed az egyikbe, a vessző utánitól a szöveg végéig tartót pedig a másikba.
2015. máj. 14. 18:54
Hasznos számodra ez a válasz?
 2/3 SimkoL ***** válasza:
2015. máj. 14. 19:04
Hasznos számodra ez a válasz?
 3/3 tabaki ***** válasza:

Hja, kérem, könnyű annak, aki ért is hozzá...

Azért a tanulság kedviért itt az én két nehézkesebb megoldásom is, ha nem is éppen VB-ben, de a némiképp hasonló Gambasben:


Public Sub CiklusGomb_Click()

Dim voltvesszo As Boolean

Dim i As Integer

Dim betu As String

      Label1.Caption = ""

      Label2.Caption = ""

      voltvesszo = False

      For i = 1 To Len(szoveg.Text)

            betu = Mid(szoveg.Text, i, 1)

            Select Case betu

            Case ","

                  voltvesszo = True

            Case Else

                  If voltvesszo Then

                        Label2.Caption = Label2.Caption & betu

                  Else

                        Label1.Caption = Label1.Caption & betu

                  Endif

            End Select

      Next

End


Public Sub InStrGomb_Click()

Dim vesszohelye As Integer

      vesszohelye = InStr(szoveg.Text, ",")

      Label1.Caption = Left(szoveg.Text, vesszohelye - 1)

      Label2.Caption = Right(szoveg.Text, - vesszohelye)

End

2015. máj. 14. 20:43
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!