Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - NYlOn

#81
Y hay gente que dice que no hacen falta moderadores  :-X
#82
Programación Visual Basic / Re: Encuesta
17 Agosto 2006, 23:07 PM
Moderadores YA, por favor

Es increible la cantidad de mensajes absurdos que hay. Desde que se fue Slasher el nivel del foro bajo muchisimo. Si algun moderador borrara o cerrara mensajes tontos se haria todo mucho mas probechoso para todos.


En su momento tambien hable con el brujo y dijo que "lo verian". No se que ocurrio despues...



Saludos.-
#83
Problema solucionado  ;D


Estuve toda la tarde, pero salio y anda a la perfeccion =)

Dejo el codigo por si a alguien le interesa. No lo comento pq ya estoy cansado xD. Basicamente lo que hice fue sacar la pendiente de cada recta y con las pendientes sacar la ecuacion de cada una. Despues las iguale y resolvi la ecuacion. Fue facil hacerlo a mano pero en VB, puf, me costo bastante (mas que nada por la utilizacion de decimales y cadenas del tipo String). Aclaro que hay mucho codigo que puede sacarse y reducirlo (ademas de cambiar los nombres ya que fui modificando funciones, etc). En fin, espero que a alguien le sirva y no tenga que hacer todo el trabajo desde 0...

Option Explicit
Public vX As Currency, vY As Currency

Public Sub SacarEcuacion(Line1 As Line, Line2 As Line)
    Dim Ecs(1) As String, i As Integer
    Dim Pendiente As Currency, Nominador As Currency, Denominador As Currency
    Dim X1 As Currency, Y1 As Currency, X2 As Currency, Y2 As Currency
   
    For i = 0 To 1
        If i = 0 Then
            X1 = Line1.X1: X2 = Line1.X2: Y1 = Line1.Y1: Y2 = Line1.Y2
        Else
            X1 = Line2.X1: X2 = Line2.X2: Y1 = Line2.Y1: Y2 = Line2.Y2
        End If
        Nominador = Y2 - Y1
        Denominador = X2 - X1
        Pendiente = Nominador / Denominador
        Ecs(i) = Pendiente & ".X +" & (Pendiente * -X2) + Y2
    Next i
   
    Interseccion Ecs(0), Ecs(1)
   
End Sub

Public Sub Interseccion(Ec1 As String, Ec2 As String)
    Dim P(1) As String, Q(1) As String, J(4) As Currency
    Dim Punto As Integer
   
    P(0) = Mid(Ec1, 1, InStr(1, Ec1, ".") - 1)
    Punto = InStr(1, P(0), "/")
    If Punto > 0 Then
        If Left(P(0), 1) = "-" Then Punto = Punto + 1
        J(0) = Val(Mid(P(0), 1, Punto)) / Val(Mid(P(0), Punto))
    Else
        J(0) = P(0)
    End If
   
    P(1) = Mid(Ec2, 1, InStr(1, Ec2, ".") - 1)
    Punto = InStr(1, P(0), "/")
    If Punto > 0 Then
        If Left(P(1), 1) = "-" Then Punto = Punto + 1
        J(1) = -Val(Mid(P(1), 1, Punto)) / Val(Mid(P(1), Punto))
    Else
        J(1) = -P(1)
    End If
   
    Q(0) = Mid(Ec1, InStr(1, Ec1, "+") + 1)
    Punto = InStr(1, Q(0), "/")
    If Punto > 0 Then
        If Left(P(0), 1) = "-" Then Punto = Punto + 1
        J(2) = -Val(Mid(Q(0), 1, Punto)) / Val(Mid(Q(0), Punto))
    Else
        J(2) = -Q(0)
    End If
   
    Q(1) = Mid(Ec2, InStr(1, Ec2, "+") + 1)
    Punto = InStr(1, Q(1), "/")
    If Punto > 0 Then
        If Left(P(0), 1) = "-" Then Punto = Punto + 1
        J(3) = Val(Mid(Q(1), 1, Punto)) / Val(Mid(Q(1), Punto))
    Else
        J(3) = Q(1)
    End If
   
    vX = (J(2) + J(3)) / (J(0) + J(1))
    vY = Cuenta(Ec1, vX)
End Sub

Public Function Cuenta(Ecuacion As String, X As Currency) As Currency
    Dim P(1) As Currency, Punto As Integer
   
    Punto = InStr(1, Ecuacion, ".")
    P(0) = Fraccion(Mid(Ecuacion, 1, Punto - 1)) * Fraccion(X)
   
    P(1) = P(0) + Val(Fraccion(Mid(Ecuacion, Punto + 4)))
   
    Cuenta = P(1)
End Function

Public Function Fraccion(n As Currency) As String
    Dim Punto As Integer
    Punto = InStr(1, n, "/")
    If Punto > 0 Then
        Fraccion = Val(Mid(n, 1, Punto - 1)) / Val(Mid(n, Punto + 1))
    Else
        Fraccion = n
    End If
End Function



Para ver la interseccion seria:

   SacarEcuacion Line1, Line2
   Picture1.Move vX, vY 'aca ponemos un picturebox en la interseccion


Saludos.-
#84
Hola a todos, en realidad mi problema es mas de matematicas que de programacion, pero me parecio mas apropiado postearlo aca. Mi problema es el siguiente:
Tengo 2 lineas secantes (es decir, que se cortan en un punto pero no a 90°). Estas lineas estan representadas con controles Line. Los datos que yo tengo son (X1; Y1) y (X2; Y2), lo que significa que sé donde empieza y donde termina cada linea. Lo que necesito hacer (y es lo que no puedo conseguir), es situar un control PictureBox en la interseccion de esas 2 lineas.
Por favor si a alguien se le ocurre alguna solucion estaria muy agradecido.

Saludos.-
#85
Programación Visual Basic / Re: Pulsar Tecla
8 Agosto 2006, 23:45 PM
En el evento KeyPress del textbox que quieras pones el siguiente
If KeyAscii = 13 Then '13 es el enter...
    Label1.Visible = True 'Hacer lo que quieras
End If


Saludos.-
#86
Programación Visual Basic / Re: Pulsar Tecla
6 Agosto 2006, 07:58 AM
Lo podes hacer con la API keybd_event. Un ejemplo:

Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const KEYEVENTF_KEYUP = &H2
'Podes usar constantes para las letras dandoles su valor en ASCII, por ej la letra A seria 65
VK_A = 65
VK_b = 98

Private sub Timer1_Timer ()
    keybd_event VK_A, 0, 0, 0   'apretas A
    keybd_event VK_A, 0, KEYEVENTF_KEYUP, 0   ' soltas A
    keybd_event VK_b, 0, 0, 0   ' apretas b
    keybd_event VK_b, 0, KEYEVENTF_KEYUP, 0   ' soltas b
End Sub


Podes ver los valores ASCII en http://ascii.cl/es/ o sino busca que hay montones de paginas...

Saludos.-
#87

C:\Documents and Settings\USUARIO\Configuración local\Historial


Es cuestion de buscar...

Saludos.-
#88
Para ver la cam sin que se den cuenta es muy simple.
Primero mandas la invitacion al mail que desees (usando las APIs del MSN) y dsp con el ShowWindow escondes la ventana y listo. Lo prove muchas veces y funciona sin problemas.

Saludos.-
#89
Busca info sobre el control Microsoft Office Web Components. La verdad no te puedo ayudar pq no tengo ni idea de como funciona, pero busca por inet q seguro encontras algo.

Saludos.-
#90
La propiedad .Top. Si aumenta, el control baja, y si disminuye, el control sube (con respecto al form).

Saludos.-