Hola el problema q tengo es que quiero generar un tipo cuestionario cargado desde una base de datos con los campos codigo, pregunta, r1, r2, r3 y RC. R1 a r3 logicamente serian las posibles respuestas y RC seria la respuesta correcta, bueno a grano, en el siguiente codigo genero una busqueda para que me encuentre los valores necesarios y resulta de lo lindo pero al generar el segundo groupbox no se que pasa con las coordenadas que se me pierden las respuestas, el primer groupbox junto con la pregunta y respuestas me sale bien pero los demas como que estoy algo atorado en eso...cualquier ayuda sera bienvenida...en este angustiante estado en que me encuentro...jejeje. el codigo es el siguiente.
previamente hago un contador para ver el total de preguntas y la iguala ala variable "Variable" muy original el nombre no?..jeje
Private Sub Generar()
'Me.PanelControl1.Controls.Clear()
m_Location = New Point(10, 25)
Dim i As Integer
For i = 1 To Variable - 1
m_ControlCount += 1
'-----------------------------busqueda------------
conn.Close()
conn.Open()
Dim sstring, sstring2, sstring1 As String
Try
sstring = "SELECT Pregunta FROM tabla where codigo='" & i.ToString & " ' "
Dim Cmd999 As New SqlCommand(sstring, conn)
Cmd999.ExecuteNonQuery()
var = Cmd999.ExecuteScalar
Catch ex As Exception
Variable = 1
'MsgBox(ex.Message)
Catch er As SqlException
MsgBox(er.Message)
Variable = 1
End Try
'-------------------------------------------
Dim GB As New GroupBox
With GB
GB.Size = New System.Drawing.Size(520, 120)
.Text = "Moralito"
.Name = "Moraito"
.Location = New Point(m_Location.X, m_Location.Y)
Me.Controls.Add(GB)
Dim com As New Label
With com
.Text = var.ToString
.Name = var.ToString + i.ToString
.Location = New Point(10, GB.Location.Y + 3) 'New Point(m_Location.X, m_Location.Y)
com.BringToFront()
End With
GB.Controls.Add(com)
AddHandler com.Click, AddressOf Cambiarimagen
m_Location.Y += 23
Dim x As Integer
Dim y As String
sstring = "SELECT r1 FROM tabla where codigo='" & i.ToString & " ' "
sstring1 = "SELECT r2 FROM tabla where codigo='" & i.ToString & " ' "
sstring2 = "SELECT r3 FROM tabla where codigo='" & i.ToString & " ' "
Dim Cmd9999 As New SqlCommand(sstring, conn)
Cmd9999.ExecuteNonQuery()
var1 = Cmd9999.ExecuteScalar
Dim Cmd1 As New SqlCommand(sstring1, conn)
Cmd1.ExecuteNonQuery()
Dim var2 As String
var2 = Cmd1.ExecuteScalar
Dim Cmd2 As New SqlCommand(sstring2, conn)
Cmd2.ExecuteNonQuery()
Dim var3 As String
var3 = Cmd2.ExecuteScalar
Dim rd As New RadioButton
With rd
.Text = var1.ToString
.Name = var1.ToString + i.ToString
'.Location = New Point(m_Location.X, m_Location.Y)
.Location = New Point(10, com.Location.Y + 20)
End With
GB.Controls.Add(rd)
AddHandler rd.Click, AddressOf Cambiarimagen
m_Location.Y += 23
Dim rd2 As New RadioButton
With rd2
.Text = var2.ToString
.Name = var2.ToString + i.ToString
'.Location = New Point(m_Location.X, m_Location.Y)
.Location = New Point(10, rd.Location.Y + 20)
End With
GB.Controls.Add(rd2)
AddHandler rd2.Click, AddressOf Cambiarimagen
m_Location.Y += 23
Dim rd3 As New RadioButton
With rd3
.Text = var3.ToString
.Name = var3.ToString + i.ToString
'.Location = New Point(m_Location.X, m_Location.Y)
.Location = New Point(10, rd2.Location.Y + 20)
End With
GB.Controls.Add(rd3)
AddHandler com.Click, AddressOf Cambiarimagen
m_Location.Y += 23
End With
m_Location.Y += 50 '80
'GB.SendToBack()
Next i