18. maj 2006 - 21:51Der er
13 kommentarer og 1 løsning
problemer med Combobox
Hej jeg har et programer her
Public Class Form1
Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) ' 'ToDo: Error processing original source shown below 'System.Char[] '^--- Syntax error: '{' expected End Sub 'MainFormLoad
Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim navne As String() = {"Simon", "hans", "kim", "Christian", "kasper", "Søren"} Dim rnd As New Random()
textBox1.Text = navne(rnd.Next(0, 5)) End Sub 'Button1Click
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) End Sub 'button1_Click
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
End Sub End Class
Jeg har lavet sådan en menu i min Combobox hvor man kan rulle ned og vælge drenge navne eller pigen navne.
jeg vil gerne have at den skrive drenge navne når man har valgt drengen navne i Combobox'en og at den skrive pige navne når man har valgt pige navne i Combobox'en..
Den skal stadig skrive drenge og pige navne i samme tekstbox.
Det er lidt forvirrende den måde det beskrives på.. (o= Skal Tekstboksen vise et tilfældigt pigenavn når du fra comboboksen vælger "Pigenavne"? Og ligeledes når der vælges drengenavne, blot med et drengenavn.
Så skal du lægge din kode inde i combobox selected index changed (den står tom lige nu i din kode) hvis du skal have et navn automatisk når du vælger en af delene. Skal du derimod have værdien når man har trykket på knappen button1 lægges den ind i buton1_click..
Her kan du så bruge en IF THEN sætning og combobox.selectedindex
If combobox1.selectedindex = 0 Then Dim navne As String() = {"Simon", "hans", "kim", "Christian", "kasper", "Søren"} Dim rnd As New Random() textBox1.Text = navne(rnd.Next(0, 5)) Else Dim navne As String() = {"Simone", "Julie", "Line", "Signe", "Helena", "Maria"} Dim rnd As New Random() textBox1.Text = navne(rnd.Next(0, 5)) End if
combobox.selectedindex viser hvilket nummer der er valgt i comboboxen. 0 er den første, 1 den næste osv.. Combobox selected index changed bliver kørt når du ændrer en værdi i comboboxen. Håber det var det du tænkte på.
Jeg har en knap hvor man kan trykke så kommer den med et tilfædligt navn.
Så det den skal er at når man vælger i comboboxen pigen navne så skal den lave et tilfældigt pige navne ved at man trykker på Button1. Og det samme hvis man vælger et drenge navne så skal den lave et tilfædigt drenge navn når man trykker på Button1... :O)
Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If ComboBox1.SelectedIndex = 0 Then Dim navne As String() = {"Simon", "hans", "kim", "Christian", "kasper", "Søren"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5)) Else
Dim navne As String() = {"Simone", "Julie", "Line", "Signe", "Helena", "Maria"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5))
End If
Men hvad skal jeg gøre hvis jeg vil have at der skal være mere og vælge i mellem for eksempel Der er i Comboboxen "Drenge navne" "Pige Navne" "katte navne" osv. Hvordan skal jeg lave det??? Det er mit sidste spørgsmål. ;o)
Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If ComboBox1.SelectedIndex = 0 Then Dim navne As String() = {"Simon", "hans", "kim", "Christian", "kasper", "Søren"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5)) Else
End If If ComboBox1.SelectedIndex = 1 Then Dim navne As String() = {"Simone", "Julie", "Line", "Signe", "Helena", "Maria"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5)) Else
End If If ComboBox1.SelectedIndex = 2 Then Dim navne As String() = {"jsdkjs", "asfsaf", "safdsaf", "safsaf", "asfasf", "safsf"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5)) End If
Ok, det ser rigtigt nok ud.. Men når du har mange IF THEN sætninger kan eventuelt bruge Select case.. Så skriver du istedet
Select Case combobox1.selectedindex Case 0 Dim navne As String() = {"Simon", "hans", "kim", "Christian", "kasper", "Søren"} Dim rnd As New Random() RichTextBox1.Text = navne(rnd.Next(0, 5)) Case 1 .... osv ... Case 2 ..... Case Else msgbox("Hvad i alverden har du trykket på") Ens select
Og du kunne også lægge en messagebox ind hvis der ikke står noget i comboboxen eventuelt. Så har combobox1.selectedindex værdien -1
Held og lykke med det.. (o=
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.