Quiero organizar varios controles de etiquetas en un círculo en vb. ¿Se puede lograr?
No es necesario agregar otros controles manualmente, simplemente cree un formulario, escriba el código en el formulario y ejecútelo para ver si tiene el efecto que desea.
const Pi As Double = 3.14159265358979
Tipo privado P
x tiene la misma longitud
Siempre que
tipo final
Private subform_Load()
Dim r As Long
Dimocontrol (11) como control dinámico del objeto.
Atenuar pCir como P
Atenuar cPT(11) como P
Marcar I como un número entero
Si i. Ancho y ltHeight luego r = me.width/3Else r = me.height/3' para calcular el radio.
pcir . x = me.width/2: pcir .
Para i = 0 a 11 'Calcular coordenadas de control.
Comité Europeo para la Prevención de la Tortura. X = pCir. x+Sin(Pi * I * 30/180)* r:cPT(I). Y = pCir. Y - Cos(Pi * i * 30 / 180) * r
Siguiente yo
Para i = 0 a 11 'Genere dinámicamente el control LBL y establezca las coordenadas y propiedades.
Establezca oControl(i) = controlar. add("VB.Tag", "lblClock" y .stc(1))
Si i = 0, entonces oControl(i). Caption = "12 "De lo contrario, controle (uno). título = i
oControl(a). Ancho = 180: oControl(i). Altura = 180
oControl(1). Visible = Verdadero
oControl(1). Izquierda = cPT(i). control x:o(1). Arriba = cPT(i). Y
Siguiente I
Conector final
El estilo de escritura no es muy riguroso. Por ejemplo, todas las coordenadas izquierda y superior de LBL deben restarse de las constantes lbl.width/2 y lbl.height/2 y definirse como mayúsculas. Modifíquelo según su programa.