Respuesta: txt y coordenadas en vb6 Hola:
Les pido una amplia disculpa, al decir "bloque" hablo de forma general; el texto sí dice block1, block2, ,etc; tratare de escribir tal cual escribo el codigo para no mal enteder, mil disculpas.
Utilizando el codigo de locoman en su respuesta #6, tengo un inconveniente. Cuando trato de centrar las coordenadas en el picture me da error, este es el codigo:
Option Explicit
Dim strRUTA_ARCH As String
Dim DATA As String
Dim xA As Integer
Dim yA As Integer
Dim x As Integer
Dim y As Integer
Dim CONT As Integer
Dim I As Integer
Dim HAY_DATOS As Boolean
Private Sub Command1_Click()
HAY_DATOS = False
CONT = 0
I = 1
strRUTA_ARCH = App.Path & "\COORDENADAS.TXT"
Open strRUTA_ARCH For Input As #1
Do While EOF(1) = False
Line Input #1, DATA
If Trim(DATA) = "block " & I Then
HAY_DATOS = True
I = I + 1
Else
If HAY_DATOS = True Then
xA = (Picture1.Width / 2)
yA = (Picture1.Height / 2)
x = Mid(DATA, 1, InStr(1, DATA, ",") + 1)
y = Mid(DATA, InStr(1, DATA, ",") + 1)
CONT = CONT + 1
If CONT = 2 Then
Picture1.Line (xA, yA)-(x, y), vbBlue
CONT = 0
Else
xA = x
yA = y
End If
End If
End If
DoEvents
Loop
Close #1
End Sub
Private Sub Command3_Click()
Picture1.Cls
End Sub
Private Sub Form_Load()
Me.ScaleMode = 3
Picture1.ScaleMode = 3
Picture1.AutoRedraw = True
End Sub
Private Sub Command2_Click()
Picture1.Line (30, 25)-(30, 150), vbBlue
Picture1.Line (30, 150)-(200, 150), vbBlue
Picture1.Line (200, 150)-(200, 25), vbBlue
Picture1.Line (200, 25)-(30, 25), vbBlue
End Sub
Segun esto, al dar click en command1, debería formar un cuadro en el centro del picture; pero lo que hace son 4 linea desde el centro. He puesto un command2 para que se vea el cuadro a formar; " ahora que si das click en ambos command, veras un bonito prisma, jejeje".
Locoman, si no es molesto, podrías explicarme esta linea?: x = Mid(DATA, 1, InStr(1, DATA, ",") + 1).
En que estoy errado?, las coordenadas las puse positivas, para que no salgan del picture, ademas haría una solo linea y desbordaría por un lado, si algunas son negativas.
Como siempre, muchas gracias de antemano.
Saludos. |