ruego meayuden como puedo posicionar un control dentro de un formulario, con coordenadas, con el radio y el angulo como datos.
el formulario tiene los ejes x e y. ej:
R = 30
Angulo = 45º
gracias
ruego meayuden como puedo posicionar un control dentro de un formulario, con coordenadas, con el radio y el angulo como datos.
el formulario tiene los ejes x e y. ej:
R = 30
Angulo = 45º
gracias
Busca la formula para dibujar un circulo compuesto depuntos. Yo ahora no la recuerdo pero es facil encontrarla. En si el algoritmo, y es solo resolver para los valores que propones
Recuerda: Cadena de favores
Hola Lucila... utiliza las siguientes formulas:
Left = Coseno(Angulo) * Radio ---> (eje X)
Top = Seno(Angulo) * Radio ---> (eje Y)
Aqui te envio una funcion para q posiciones el control de acuerdo a tus datos.
Código:Private Sub MoverControl(ByVal cControl As Control, ByVal nAngulo As Single, ByVal nRadio As Single) Dim nLeft As Single Dim nTop As Single Const PI As Single = 3.14159265358979 'La formula a usar es Coseno(<º) * R, para obtener Left 'a la funcion Cos tiene q pasarle el angulo en radianes 'convertimos los grados a radianes de la siguientes forma ' Grados * (PI/180) nLeft = Cos(nAngulo * (PI / 180)) * nRadio 'La formula a usar es Seno(<º) * R, para obtener Top 'a la funcion Sin tiene q pasarle el angulo en radianes 'convertimos los grados a radianes de la siguientes forma ' Grados * (PI/180) nTop = Sin(nAngulo * (PI / 180)) * nRadio cControl.Left = nLeft cControl.Top = nTop End Sub Private Sub Command1_Click() MoverControl Text1, 20, 30 End Sub
Ten presente q para este caso influye mucho la propiedad ScaleMode del formulario. Con la funcion MoverControl Text1, 20, 30, y si la propiedad ScaleMode esta en 1-Twip el control no se movera casi nada de la esquina superior izquierda del formulario; o siScaleMode es 6 - Milimeter, el control se movera mucho regular de la esquina del formulario. O si es q esta en 7 - Centimeter, el control talves se mueva mucho q desaparece del formulario.
Bueno espero q te sirva... Bye y Besos
Isaac...