lordlappy Skrevet 3. desember 2006 Skrevet 3. desember 2006 (endret) jeg skal lage et program i visual basic 2005 der det står 9 checkbox'er som skal hver starte et programm hver. Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If CheckBox1.Checked = True Then Shell("C:\Programfiler\Winamp\Winamp.exe") End If If CheckBox2.Checked = True Then Shell("C:\Programfiler\MSN Messenger\msnmsgr.exe") End If If CheckBox3.Checked = True Then Shell("C:\Programfiler\Nero\Nero 7\Nero StartSmart\NeroStartSmart.exe") End If If CheckBox4.Checked = True Then Shell("C:\Programfiler\Opera\Opera.exe") End If End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click If CheckBox5.Visible = False Then CheckBox5.Visible = True CheckBox5.Text = TextBox1.Text Else If CheckBox6.Visible = False Then CheckBox6.Visible = True CheckBox6.Text = TextBox1.Text Else If CheckBox7.Visible = False Then CheckBox7.Visible = True CheckBox7.Text = TextBox1.Text Else If CheckBox8.Visible = False Then CheckBox8.Visible = True CheckBox8.Text = TextBox1.Text Else If CheckBox9.Visible = False Then CheckBox9.Visible = True CheckBox9.Text = TextBox1.Text End If End If End If End If End If End Sub End Class når programmet er startet er checkbox 1-4 allerede skrevet inn programmet og 5-9 er ikke synlige. det jeg har fått til er at jeg kan skrive navnet på checkbox'ene men jeg vil også kunne skrive inn plasseringen til det programmet jeg vil starte. der shell kommer inn. etter If CheckBox4.Checked = True Then Shell("C:\Programfiler\Opera\Opera.exe") End If vil jeg at 5 skal komme og den adressen jeg skrev inn på checkbox5: skal begynne å kjøre. kansje vanskelig å forstå så jeg har et bilde av hvordan det skal se ut. det er bildet når jeg er på VB dette er når jeg har startet programet som jeg har laget så langt slik at dere ser hva som viser når jeg starter det. skulle gjerne vist hvordan jeg gjør slik at den husker de programmene til neste gang jeg starter programmet også takker på forhånd Endret 3. desember 2006 av lordlappy
aadnk Skrevet 3. desember 2006 Skrevet 3. desember 2006 Jeg vil på det sterkeste fraråde deg å overhodet benytte GoTo-kommandoen i både VB6 og VB7, da dette kan føre til at kodestrømmen blir mer kompleks og vanskelig å følge (jmf. spagettikode). En må benytte funksjoner, løkker, objekter og variabler (arrayer, eksempelvis), en ustrukturerte hopp fra et sted til et annet. Jeg anbefaler deg å lese en bok, eller evt. internettressurser, om dette emnet. For øvrig har jeg tidligere laget et slikt prosjekt i VB.NET. Jeg har endret på det slik at det ligner ditt prosjekt rent utseendemessig og lagt til et par kommentarer, men koden er nok en smule over ditt nivå. I alle fall synes jeg du burde begynne på nytt, enten ved endre brukergrensesnittet eller finne en fungerende løsning på det nåværende. Shortcuts.zip
lordlappy Skrevet 3. desember 2006 Forfatter Skrevet 3. desember 2006 (endret) hvordan fikk du til browse på programmet ditt? har du noen sider som du vil anbefale helst på norsk Endret 3. desember 2006 av lordlappy
aadnk Skrevet 3. desember 2006 Skrevet 3. desember 2006 (endret) hvordan fikk du til browse på programmet ditt? 7415624[/snapback] Bruk OpenFileDialog, eksempelvis således: Dim dlgFileOpen As New OpenFileDialog() With dlgFileOpen ' Benyttes for å la muliggjøre valg av filtype .Filter = "Programfil (*.exe)|*.exe|Alle filer (*.*)|*.*" ' Vis dialogboks og se om brukeren åpnet en fil If .ShowDialog() = Windows.Forms.DialogResult.OK Then ' * Din kode her * MessageBox.Show("Du valgte følgende fil: " & .FileName) End If End With Filterstrengen er oppbygd som følger: Navn|Filter|Navn|Filter| ... Navnet er teksten som vises i kombiboksen, filteret er kodestrengen som benyttes når dialogboksen skal bestemme hvilke filer som skal vises i dialogboksen. Stjernetegnet i filteret er et såkalt jokertegn - dvs. det kan svare til alle mulige karakterer i alle mulige kvantiteter. «*.exe» svarer derfor til alle filnavn som ender på «.exe», mens «*.*» svarer til alle filnavn som inneholder et punktum. Endret 3. desember 2006 av aadnk
lordlappy Skrevet 3. desember 2006 Forfatter Skrevet 3. desember 2006 fant utav det me goto nå det var jo flott men jeg vet ikke om jeg kan gjøre det kortere for jeg kan ikke så mye med disse fant det i et emne du hadde lagt det i Byte - - - 1 - 1,9141 ms Integer - % - 2 - 1,1917 ms Long - & - 4 -1,0491 ms Single - ! - 4 - 1,2922 ms Double - # - 8 - 1,4112 ms Currency - @ - 8 - 1,4373 ms Variant - - - 16 - 3,2100 ms String - - - 2pr. bokstav - ' men jeg har nå forandret det andre innlegget mitt og fått vekk goto
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå