Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Tallentamista VB:llä...

Murkeli [31.03.2003 13:50:23]

#

Eli... Kun nyt yritän tehdä tällaista arkistointiohjelmaa, josta sitten voisi etsiä tiettyjä osioita ja tallentaa formeja. Kaksi kysymystä:

1) Vaikka Text1 textboxiin kirjoittaa tietoa, jonka sitten haluaa tallentaa ohjelman sisään niin, että kun ohjelman seuraavaksi avaa on tieto säilynyt Text1:ssä. Jos mahdollista niin miten?

2) Millä komenolla projektin jokaisesta formista voi etsiä sanoja? Niin että ohjelma listaisi kaikki formit joista löytyy esim. sana "Ohjelmointiputka".

Kiitos jo etukäteen :)

trinit [31.03.2003 16:44:59]

#

lainaus:

1) Vaikka Text1 textboxiin kirjoittaa tietoa, jonka sitten haluaa tallentaa ohjelman sisään niin, että kun ohjelman seuraavaksi avaa on tieto säilynyt Text1:ssä. Jos mahdollista niin miten?

Tallennat TextBoxin sisällön tiedostoon ja luet sen sieltä kun ohjelma käynnistetään ja asetat sen takaisin TextBoxiin. Tiedostojen käytöstä on asiaa VB oppaassa: https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=vbo_8

lainaus:

2) Millä komenolla projektin jokaisesta formista voi etsiä sanoja? Niin että ohjelma listaisi kaikki formit joista löytyy esim. sana "Ohjelmointiputka".

Tarkoitatko nyt suunnittelutilassa tapahtuvaa etsintää vai ohjelman ajon aikana tapahtuvaa?

Murkeli [31.03.2003 18:27:28]

#

Niin siis ohjelman ajon aikana tapahtuvaa etsintää.

Ja kiitos tuosta ensimmäisestä.

Antti Laaksonen [31.03.2003 18:50:49]

#

lainaus:

2) Millä komenolla projektin jokaisesta formista voi etsiä sanoja? Niin että ohjelma listaisi kaikki formit joista löytyy esim. sana "Ohjelmointiputka".

Ajattelin aluksi tällaisen haun olevan vaikea toteuttaa, mutta yllättävän helposti se loppujen lopuksi onnistui. Lisää tämä aliohjelma vaikka moduuliin (.bas), niin voit kutsua sitä kaikkialta ohjelmastasi.

Sub EtsiTeksti(teksti As String)
    'estetään virheenkäsittely (kaikilla kontrolleilla ei ole kaikkia ominaisuuksia)
    On Error Resume Next
    Dim formi, kontrolli, t, h
    'etsittävä teksti pienenä
    t = LCase(teksti)
    'käydään kaikki auki olevat formit läpi
    For Each formi In Forms
        'käydään kaikki formin kontrollit läpi
        For Each kontrolli In formi.Controls
            'kootaan kontrollin ominaisuudet, jotka usein sisältävät tekstiä (täydennä itse!)
            h = LCase(kontrolli.Caption)
            h = h + LCase(kontrolli.Text)
            h = h + LCase(kontrolli.Value)
            'jos ominaisuuksista löytyy hakusana, näytetään ilmoitus
            If InStr(h, t) > 0 Then
                MsgBox "Löytyi formista " & formi.Name & " kontrollista " & kontrolli.Name
            End If
        Next
    Next
End Sub

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta