Törmäsin yllättäen ongelmaan johon ei näy löytyvän ratkaisua tai sitten en ymmärrä.
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
Label59.Text = DateTimePicker1.Value
pita = Val(Label59.Text)
tmp = InStr(Label59.Text, ".")
End SubTarkoitus olisi poistaa pisteet Label59.Text ruutuun tulevasta päiväyksestä (20.1.2013 => 2012013) VB.ssä homma hoituisi left ja right käskyillä mutta, tämä ei näytä niitä tuntevan vaikka VAL toimiikin. onko teillä ratkaisua tähän?
Jokin tässä mättää:
Public Class Form5
Dim klo As String
Dim tila As String
Dim karju As String
Dim pvm As Integer
Dim tmp As Integer
Dim pita As Integer
Dim pitb As String
Dim pitc As String
Dim pitd As String
Public Shared Function Replace(Expression As String, Find As String, _
Replacement As String, Start As Integer, Count As Integer, Compare As CompareMethod _
) As String Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
Label59.Text = DateTimePicker1.Value
pita = Val(Label59.Text)
tmp = InStr(Label59.Text, ".")
Dim TestString As String = Label59.Text
Dim aString As String = Replace(Label59.Text, ".", "")
End SubEn oikein hallitse noiden käyttöä mutta en saa sitä toimimaan vaikka kokeili eri variaatioita
pitäisikoö nuo Dim alkuiset sijoittaa ylös muiden sekaan ja onko tuo ylhäällä oleva muuttuja määritys oikein?
Lisäys:
Ai sekin piti vielä kysyä että, sissä nykyisin määritetään globaalit muuttujat ja mikä korvaa tuon VB6:ssa olleen APP.PATH muuttujan?
Moi heikkju2!
Public Class Form5
'näkyy koko luokassa (Form5)
Dim klo As String
'jne...
'eikä missään tapauksessa mihinkään mitään tämmösiä-------------------
Public Shared Function Replace(Expression As String, Find As String, _
Replacement As String, Start As Integer, Count As Integer, Compare As CompareMethod ) As String
'---------------------------------------------------------------------
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
'näkyy vain tässä aliohjelmassa
Dim aString As String = Label59.Text
'~ bString = aString.Korvattuna(pisteet,tyhjällä)
Dim bString As String = aString.Replace(".", "")
'Replace on VB:n sisäinen funktio, myös VB6:ssa
'VB6 syntaksi: Replace(aString, ".", "")
'testi...
MsgBox(bString)
'toinen testi...
MsgBox(Label59.Text.Replace(".", ""))
End Sub
'...
End ClassPrivate Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
Label59.Text = DateTimePicker1.Value
Dim aString As String = Label59.Text
Dim bString As String = Repalace(aString, ".", "")
End SubJostain syystä tuo VB ei tykkää tuosta replace... käskystä vaan tekee virheilmoituksen:
Error1:'Repalace' is not declared. It may be inaccessible due to its protection level.
Niinpä ei kokeilin myös tuota mallia ja siinä oli sama ongelma.
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
Dim aString As String = Label59.Text
Dim bString As String = aString.Repalace(".", "")
MsgBox(bString)
MsgBox(Label59.Text.Replace(".", "")
End SubError 1 'Repalace' is not a member of 'String'.
Error 2 ')' expected
Error 1 viittaa koodiin:
Dim bString As String = aString.Repalace(".", "")
Error2 viittaa koodiin
MsgBox(Label59.Text.Replace(".", "")
Kai nyt järki ja alkeellinen kielitaitokin sanovat, että koodissa on kirjoitusvirhe (Repalace vs. Replace) ja että MsgBox-rivin lopusta puuttuu yksi sulkumerkki.
Siinäpä se kun on tuo Lontoon kielikin kohtuullisen huonoa mutta kiitos kaikille
osaanottajille, alkoi vihdoin Lyyti kirjottaa.
Lisäys:
Tätä oiti vielä kysymän:
eli miten tässä pitäisi ratkaista alla oleva koodin pätkä vai pitäisikö joka
rivi koodata erikseen?
FileOpen(1, polku & Label59.Text, OpenMode.Input)
For a = 1 To 58
Input(1, tila)
TextBox(a).Text = tila
Next a
FileClose()
loppu:Eiköhän tuosta tekstilaatikoiden taulukoinnista ollut keskustelua ihan äsken.
Tack sano ruottelainen
Aihe on jo aika vanha, joten et voi enää vastata siihen.