Problema de dibujo de círculos VB
Problema de dibujo de círculos VB
Cree un proyecto, coloque un PictureBox en la parte superior de la ventana, el tamaño es relativamente grande y establezca su propiedad ScaleMode en 3.
Luego coloque un botón y agregue el siguiente código:
'Este código demuestra cómo usar el método Círculo de VB para dibujar varios círculos.
Form1.Picture1.Circle (60, 60), 40, vbRed 'Dibuja un círculo rojo con centro (60, 60) y radio 40 (hueco por defecto)
Form1. Picture1.FillStyle = 0 'Establece el modo de relleno en sólido
Form1.Picture1.FillColor = vbBlue 'Establece el color de relleno en azul
Form1.Picture1.Circle (190, 60) , 40, vbRed 'Lo que se dibuja es un círculo relleno de azul sólido
Form1.Picture1.DrawWidth = 3 'Establece el ancho del borde en 3
Form1.Picture1. (60, 190), 40, vbRed 'El grosor del borde del círculo dibujado esta vez es 3
Form1.Picture1.DrawStyle = 5 'Establece que el borde sea invisible
Form1 Picture1.FillColor = vbRed 'Establece el color de relleno en rojo
Form1.Picture1.Circle (190, 190), 40 'Esta vez dibuja un círculo sin bordes con un color de relleno rojo
< p. > Form1.Picture1.RefreshEntonces pruébalo y deberías entenderlo comparando los comentarios.
————————————————
PD: Evaluación del método dado por wys_sans arriba:
Método 1 no se puede llamar dibujar un círculo en absoluto;
Método 2: Obviamente Circle puede dibujar directamente un círculo sólido, pero esta persona no lo sabe;
Método 3: Eficiencia Lo peor método con resultados extremadamente bajos. ¿Con respecto al problema de dibujar coordenadas circulares en vb?
¿Durante el proceso de escritura o durante la ejecución del programa?
Varios eventos del mouse durante el proceso de ejecución pueden leer x, y
Durante el proceso de escritura, las coordenadas se pueden cambiar asignando valores directamente al atributo izquierdo del elemento de control. Ansys Workbench dibuja un círculo. Pregunta
Cuando colocas el mouse en el origen de las coordenadas, cambiará a la forma de un cuadro. Al mismo tiempo, al dibujar un círculo, aparecerá la letra P. Se mostrará para confirmar que el centro del círculo está en el origen de las coordenadas.
Haga clic derecho en vb para dibujar un círculo
Private Sub Form_MouseMove(Botón como entero, Mayús como entero, X como único, Y como único)
Si Botón = 1 Luego 'Botón izquierdo
Finalizar si
Si Botón = 2 Luego 'Botón derecho
Finalizar si
Finalizar Sub vb dibuja un círculo en la imagen ri
Private Sub Command1_Click()
Dim x, y, r
x = InputBox("Ingresa la coordenada del centro del círculo x", "Entrada de argumento", 30)
y = InputBox("Ingrese la coordenada central y", "Entrada de argumento", 30)
r = InputBox("Por favor ingrese el radio r", "Argument Enter ", 15)
Imagen1.ScaleMode = 3
Imagen1.Circle (x, y), r, , 0, 0
End Sub Dibuja un círculo Pregunta, por favor responde
Puedes intentar usar el método de inducción primero
Dibuja cualquier círculo en el plano. Estos círculos pueden dividir el plano en. la mayoría de las 2 partes
Dibuja 2 círculos cualesquiera en el plano, estos círculos pueden dividir el avión en hasta 4 partes
Dibuja 3 círculos cualesquiera en el plano, estos círculos pueden dividir el plano en hasta 8 partes
Dibuja 4 círculos cualesquiera en el avión. Estos círculos pueden dividir el avión en hasta 16 partes
.....
Dibuje 6 círculos cualesquiera en el plano. Estos círculos pueden dividir el plano en hasta 2^6 partes. círculos
Nuevo Con un TEXT2 y un botón, copie el código a Private Sub Command2_Click()
Dim i As Integer
'i = Val(Text2. Texto)
For i = 1 To Val(Text2.Text)
Form3.Picture1.Circle (120, 260), i * 10, vbRed
Siguiente
'Form3.Picture1.Circle (60, 60), 40, vbRed 'Dibuja un círculo rojo con un centro (60, 60) y un radio de 40 (hueco por defecto)
'
'
'Form3.Picture1.FillStyle = 0 'Establece el modo de relleno en sólido
'Form3.Picture1.FillColor = vbBlue 'Establece el color de relleno azul
'Form3.Picture1.Circle (190, 60), 40, vbRed 'Lo que se dibuja es un círculo relleno de azul sólido
'
'
p>'Form3.Picture1.DrawWidth = 3 'Establece el ancho del borde en 3
'Form3.Picture1.Circle (60, 190), 40, vbRe
d 'El grosor del borde del círculo dibujado esta vez es 3
'
'Form3.Picture1.DrawStyle = 5 'Establece el borde para que sea invisible
'Form3 .Picture1.FillColor = vbRed 'Establece el color de relleno en rojo
'Form3.Picture1.Circle (190, 190), 40 'Esta vez dibuja un círculo sin bordes con un color de relleno rojo
Form3.Picture1.Refresh
End Sub Flash cs6 rectángulo dibujando problema de esquinas redondeadas
Dibuje un rectángulo y cópielo en una capa diferente en la misma posición, y luego configúrelo las esquinas redondeadas Luego usa la media combinación de los dos para ayudar con el problema de dibujar un círculo en MFC
Usa la función Elipse(x1, y1, x2, y2) para dibujar una elipse; y1 son las coordenadas de la esquina superior izquierda del rectángulo circunscrito por la elipse, x2, y2 son las coordenadas de la esquina inferior derecha.
Siempre que te asegures de que estos dos puntos determinan un cuadrado, entonces la elipse inscrita será exactamente un círculo. Programación VB para dibujar un círculo con el mouse
Cree un proyecto, coloque un componente de control PictureBox en la interfaz, el nombre del componente de control es Picture1 y luego copie el siguiente código en el proyecto para ver el efecto.
¿Opción?Explícito
¿Privado?Tipo?POINTAPI
x?As?Long
y?As?Long
¿Fin?Tipo
¿Privado?Declarar?Función?Elipse?Lib?"gdi32"?(ByVal?hdc?As?Long,?ByVal?X1?As?Long,?ByVal?Y1? ¿Como?Largo,?PorVal?X2?¿Como?Largo,?PorVal?Y2?¿Como?Largo)?Como?Largo
Privado?DrawEllipse?Como?Booleano
Privado?dwPoint (1)?As?POINTAPI
Privado?Sub?Form_Load()
Imagen1.ScaleMode?=?vbPixels
Imagen1.AutoRedraw?=?True
¿Fin?Sub
¿Privado?Sub?Picture1_MouseDown(Button?As?Integer, ?Shift?As?Integer, ?x?As?Single, ?y?As?Single)
If?Button?=?vbLeftButton?Then
DrawEllipse?=?True
dwPoint(0).x?=?CLng(x)
dwPoint(0).y?=?CLng(y)
¿Fin?Si
¿Fin?Sub
¿Privado?Sub?Picture1_MouseMove( ¿Botón? ¿Como? Entero,? ¿Mayús? ¿Como? Entero,? ¿x? ¿Como? Único,? ¿y? ¿Como? Único)
Si?DrawEllipse?=?True?Entonces
dwPoint(1).x?=?CLng(x)
dwPoint(1).y?=?CLng(y)
Imagen1.Cls
¿Elipse?Picture1.hdc,?dwPoint(0).x,?dwPoint(0).y,?dwPoint(1).x,?dwPoint(1).y
Imagen1.Refresh
¿Fin?Si
¿Fin?Sub
Privado?Sub?Picture1_MouseUp(Botón?As?Entero,?Mayús?As?Entero,?x?Como?Único, ?y?As?Single)
If?Button?=?vbLeftButton?Then
DrawEllipse?=?False
¿Fin?If
¿Fin?Sub