Avatar billede dingemann Novice
14. oktober 2005 - 13:01 Der er 18 kommentarer og
1 løsning

de gamle index fra VB6

Jeg skal jeg til at lave en sudoku-løser - bare for sjov - i VB.NET.
Til det ville det være super great hvis jeg havde den gamle VB6-funktion hvor man kunne sætte index på objekter (her tekstbokse) så man kunne/kan bruge dem sammen med for-løkker osv.
Jeg ved at index røg ud men er der et alternativ eller en måde at få den tilbage på for jeg savner den til den her opgave...


// peter
Avatar billede arne_v Ekspert
14. oktober 2005 - 13:26 #1
lav et array af textboxe
Avatar billede dingemann Novice
14. oktober 2005 - 13:27 #2
gider du komme med et eksempel? - fx tre tekstbokse
Avatar billede arne_v Ekspert
14. oktober 2005 - 13:30 #3
jeg har kun lige eksempler på lager med checkboxe
Avatar billede arne_v Ekspert
14. oktober 2005 - 13:30 #4
Imports System
Imports System.Drawing
Imports System.Windows.Forms

Namespace DefaultNamespace
    Public Class MainForm
        Inherits System.Windows.Forms.Form
        Private checkBox1 As CheckBox
        Private checkBox2 As CheckBox
        Private checkBox3 As CheckBox
        Private checkBox4 As CheckBox
        Private checkBoxAll(4) As CheckBox
        Private button1 As Button
        Private button2 As Button

        Public Shared Sub Main
            Dim fMainForm As New MainForm
            fMainForm.ShowDialog()
        End Sub

        Public Sub New()
            MyBase.New
            InitializeComponent
            checkBoxAll(0) = checkBox1
            checkBoxAll(1) = checkBox2
            checkBoxAll(2) = checkBox3
            checkBoxAll(3) = checkBox4
        End Sub

        Private Sub InitializeComponent()
            checkBox1 = New CheckBox
            checkBox2 = New CheckBox
            checkBox3 = New CheckBox
            checkBox4 = New CheckBox
            button1 = New Button
            button2 = New Button
            SuspendLayout
            checkBox1.Location = New Point(50, 50)
            checkBox1.Size = New Size(100, 25)
            checkBox1.Text = "Valg 1"
            checkBox2.Location = New Point(50, 100)
            checkBox2.Size = New Size(100, 25)
            checkBox2.Text = "Valg 2"
            checkBox3.Location = New Point(50, 150)
            checkBox3.Size = New Size(100, 25)
            checkBox3.Text = "Valg 3"
            checkBox4.Location = New Point(50, 200)
            checkBox4.Size = New Size(100, 25)
            checkBox4.Text = "Valg 4"
            button1.Location = New Point(200, 100)
            button1.Size = New Size(50, 25)
            button1.Text = "Set"
            AddHandler button1.Click, AddressOf Button1Click
            button2.Location = New Point(200, 150)
            button2.Size = New Size(50, 25)
            button2.Text = "Clear"
            AddHandler button2.Click, AddressOf Button2Click
            ClientSize = New Size(300, 250)
            Controls.Add(checkBox1)
            Controls.Add(checkBox2)
            Controls.Add(checkBox3)
            Controls.Add(checkBox4)
            Controls.Add(button1)
            Controls.Add(button2)
            Name = "Main Form"
            Text = "Main Form"
            ResumeLayout(False)
        End Sub

        Private Sub Button1Click(sender As System.Object, e As System.EventArgs)
            Dim i As Integer
            For i = 0 To 3
                checkBoxAll(i).Checked = True
            Next
        End Sub

        Private Sub Button2Click(sender As System.Object, e As System.EventArgs)
            Dim i As Integer
            For i = 0 To 3
                checkBoxAll(i).Checked = False
            Next
        End Sub
    End Class
End Namespace
Avatar billede arne_v Ekspert
14. oktober 2005 - 13:30 #5
Imports System
Imports System.Drawing
Imports System.Windows.Forms

Namespace DefaultNamespace
    Public Class MainForm
        Inherits System.Windows.Forms.Form
        Private checkBoxAll(4) As CheckBox
        Private button1 As Button
        Private button2 As Button

        Public Shared Sub Main
            Dim fMainForm As New MainForm
            fMainForm.ShowDialog()
        End Sub

        Public Sub New()
            MyBase.New
            InitializeComponent
        End Sub

        Private Sub InitializeComponent()
            Dim i As Integer
            For i = 0 To 3
                checkBoxAll(i) = New CheckBox
            Next
            button1 = New Button
            button2 = New Button
            SuspendLayout
            For i = 0 To 3
                checkBoxAll(i).Location = New Point(50, 50 + i * 50)
                checkBoxAll(i).Size = New Size(100, 25)
                checkBoxAll(i).Text = "Valg " & (i + 1)
            Next
            button1.Location = New Point(200, 100)
            button1.Size = New Size(50, 25)
            button1.Text = "Set"
            AddHandler button1.Click, AddressOf Button1Click
            button2.Location = New Point(200, 150)
            button2.Size = New Size(50, 25)
            button2.Text = "Clear"
            AddHandler button2.Click, AddressOf Button2Click
            ClientSize = New Size(300, 250)
            For i = 0 To 3
                Controls.Add(checkBoxAll(i))
            Next
            Controls.Add(button1)
            Controls.Add(button2)
            Name = "Main Form"
            Text = "Main Form"
            ResumeLayout(False)
        End Sub

        Private Sub Button1Click(sender As System.Object, e As System.EventArgs)
            Dim i As Integer
            For i = 0 To 3
                checkBoxAll(i).Checked = True
            Next
        End Sub

        Private Sub Button2Click(sender As System.Object, e As System.EventArgs)
            Dim i As Integer
            For i = 0 To 3
                checkBoxAll(i).Checked = False
            Next
        End Sub
    End Class
End Namespace
Avatar billede arne_v Ekspert
14. oktober 2005 - 13:30 #6
men ideen skulle gerne fremgå
Avatar billede dingemann Novice
14. oktober 2005 - 13:32 #7
det er da enormt besværligt fremfor den gamle index-funktion - men jeg kigger på det når jeg sidder foran en VS igen - men tak for hjælpen - melder lige tilbage senere om hvorvidt jeg spasser rundt i det :)
Avatar billede dingemann Novice
21. oktober 2005 - 18:48 #8
beklager min sløvhed - smider du et svar?
Avatar billede arne_v Ekspert
21. oktober 2005 - 18:53 #9
kommer her
Avatar billede dingemann Novice
28. oktober 2005 - 19:10 #10
ehm - efterårsferien tog hårdt - yder du lidt support hvis jeg siger at koden som sådan ikke generere noget?
Avatar billede arne_v Ekspert
28. oktober 2005 - 19:11 #11
hvordan ser din kode ud ?

hvad skulle den gøre ?

og hvad gør den ? (ingenting kan jeg forstå)
Avatar billede dingemann Novice
28. oktober 2005 - 19:13 #12
"HAndles clause requires a WithEvents vaiable" <-- "Private Sub Button2Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button2.Click"

Bølgen er under henholdsvis button2 og button1 i den næsten magen til sætning
Avatar billede dingemann Novice
28. oktober 2005 - 19:16 #13
... og for en god gangs skyld så kommer fejlen i den sidste version du sendte :D
Avatar billede arne_v Ekspert
28. oktober 2005 - 19:23 #14
min kode har ikke en

Handles button2.Click

!?!?
Avatar billede dingemann Novice
28. oktober 2005 - 19:30 #15
ja det må stå for VS's egen regning - jeg har copy/pastet - hvis jeg sletter det stykke får jeg ingen fejl men programmet loader en flad webform
Avatar billede dingemann Novice
28. oktober 2005 - 20:06 #16
nåh men jeg kan oplyse at jeg har smidt koden før

Public Class Form1
    Inherits System.Windows.Forms.Form
etc



er det korrekt?
Avatar billede arne_v Ekspert
28. oktober 2005 - 20:32 #17
nej

den kode jeg har pastet ind er et komplet program alt inklusive
Avatar billede dingemann Novice
28. oktober 2005 - 20:42 #18
dvs ctrl+a i kildekoden og så ctrl+v med din kode = "Sub Main" was not found in test.form1
Avatar billede arne_v Ekspert
31. oktober 2005 - 22:30 #19
Sub Main er i formen ...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester