Páginas (2):    1 2
Harpo   07-03-2023, 13:20
#11
(06-03-2023, 21:08)Shordi escribió: Hecho. Ahora se comporta como un panel normal pero respetando el Radius de las esquinas y demás.
Me gustaría que lo probaseis porque el cálculo de la ubicación de los contenidos al Radius de las esquinas y demás lo he hecho bastante a ojímetro... por lo que no sé qué puede ocurrir en otras máquinas que no sean la mía.

Saludos

A mi no me ajusta bien y no tiene en cuenta el tamaño del borde. Pruebe esto en RoundPanel_Draw():

Código:
Dim fMargin as Float

   'Content Adjust
   'iMargin = Int($iRadius / 3)
   fMargin = Hyp($iRadius, $iRadius) / 4
   iMargin = Round(fMargin, 0) + Me.Padding + IIf($bBorder, $hBorder.Width, 0)

Una idea interesante incluir un panel interno para gestionar los controles.
Saludos, Harpo.

(06-03-2023, 22:23)tincho escribió: Felicitaciones, un gran trabajo.
No se si se podra hacer pero ¿Seria posible decirle al panel que esquinas se redondearan?
En el ejemplo de mas abajo agregue un panel a modo de barra de botones, mas oscura, y redondeo ambos panels pero quedaria mas parecido a gtk3 si la "botonera" redondea solo las esquinas superiores y por el contrario el panel de abajo solo las inferiores.

[Imagen: 6dunzXZ.png]

Se puede. Jugando con Border se pueden definir Radius distintos.

[Imagen: 2eKgjZE.png]

Si el maestro Shordi se anima lo incluimos en RounPanel Big Grin
Última modificación: 07-03-2023, 13:33 por Harpo.
Shordi   07-03-2023, 14:46
#12
Pues no se me había ocurrido. Lo investigo.

Saludos

No podemos regresar
tincho   07-03-2023, 15:50
#13
(07-03-2023, 13:20)Harpo escribió: Se puede. Jugando con Border se pueden definir Radius distintos.

Que velocidad de respuesta ! 
(07-03-2023, 13:20)Harpo escribió: Si el maestro Shordi se anima lo incluimos en RounPanel Big Grin

Seguro que si.

1 Saludo.
Shordi   08-03-2023, 14:23
#14
Vale, dicho y hecho. Ahora PicPanel puede tener sus bordes redondeados por separado además de la imagen de fondo. Lo he hecho con la clase paint todo, sin utilizar la clase Border, sólo Paint.

El formulario de Test es así:
[Imagen: ycyw8Jl.png]

Sustituye al antiguo PicPanel y deja obsoleto el RoundPanel. Por eso también he mezclado los iconos de ambos y se que quedan así:

[Imagen: VTlAOj2.png]

Ha sido divertido. Nunca  había usado Paint y realmente es divertido... aunque complejo que te cagas.

No lo adjunto a este mensaje porque le he incrustado un archivo de imagen para la demo y el foro no admite archivos de más de una mega. Lo he puesto en la Granja de Gams y  en gitlab https://gitlab.com/shordi/PicPanel y será ahí donde tendréis las futuras actualizaciones si es que las hay.

Saludos
Última modificación: 08-03-2023, 14:26 por Shordi.

No podemos regresar
tincho   08-03-2023, 14:35
#15
(08-03-2023, 14:23)Shordi escribió: aunque complejo que te cagas.

Y eso que no te metiste con OpenGL Big Grin
(08-03-2023, 14:23)Shordi escribió: No lo adjunto a este mensaje porque le he incrustado un archivo de imagen para la demo y el foro no admite archivos de más de una mega. Lo he puesto en la Granja de Gams y  en gitlab https://gitlab.com/shordi/PicPanel y será ahí donde tendréis las futuras actualizaciones si es que las hay.

No seria mas prolijo usar algo como:
[code]
Como la variable global ya es una matriz
[code]
Tal vez seria mejor tener un método de escritura y uno de lectura y no 4 + 4.

Bueno, en un rato lo hice yo. Hice las modificaciones, reduje el tamaño del .jpg para que ocupe menos lo adjunto por acá.

Gracias por compartir.
Archivos adjuntos
.gz
PicPanel-master-0.1.1.tar.gz (Tamaño: 16.26 KB Descargas: 1)
Última modificación: 08-03-2023, 15:19 por tincho.

1 Saludo.
Shordi   08-03-2023, 19:14
#16
Cita:Tal vez seria mejor tener un método de escritura y uno de lectura y no 4 + 4.
 
Esa fue mi primera aproximación al asunto, pero luego decidí seguir la filosofía que muestra la clase Border.
Todo en una sola propiedad tipo array puede ser más simple en tiempo de diseño, pero aporta problemas nemotécnicos, creo, al momento de usar la clase:  ¿Topleft, TopRight, Bottomleft, BottomRight  (es decir línea de arriba -> línea de abajo) o Topleft, TopRight, BottomRight, BottomLeft (es decir esquinas en sentido horario)? Cuando tengas que redondear una de las esquinas ¿Es el tercer parámetro o el segundo? A mí por lo menos, dentro de unos meses me costaría tener que ir al código a recordarlo. Dando nombre a cada Radius, es el propio IDE el que te dice cuál tienes que retocar.

Creo que lo dejaré con las cuatro, que son cinco, propiedades.

Muchas gracias por tu interés en el tema.

Saludos

No podemos regresar
Shordi   08-03-2023, 20:56
#17
Ahora voy a actualizar el PicToolButton... que pasará a llamarse PicButton, creo.

Saludos

No podemos regresar
tincho   08-03-2023, 21:09
#18
(08-03-2023, 19:14)Shordi escribió: A mí por lo menos, dentro de unos meses me costaría tener que ir al código a recordarlo

No es complicado en absoluto, son los cuadrantes si arrancas desde cero grados y aumentas los grados tienes el cuadrante 0 (seria el uno pero las listas en gambas ... ) luego el 1  el 2 y finalmente el 3
[Imagen: sPhtuiR.png]
Q1 = Radius[0]
Q2 = Radius[1]
Q3 = Radius[2]
Q4 = Radius[3]

Ademas Paint dibuja todo otra vez aunque solo cambies una esquina Paint borrara todo y volverá a dibujarlo.

1 Saludo.
Shordi   08-03-2023, 21:25
#19
Cita:No es complicado en absoluto
Sobreestimas mi memoria de pez, compañero... Confused Confused

Saludos

No podemos regresar
tincho   08-03-2023, 21:46
#20
(08-03-2023, 21:25)Shordi escribió: Sobreestimas mi memoria de pez, compañero... Confused Confused

En electricidad y magnetismo teníamos una regla mnemotécnica llamada "regla de la mano derecha"
[Imagen: omXkkIb.png]
https://es.wikipedia.org/wiki/Regla_de_la_mano_derecha

1 Saludo.
Páginas (2):    1 2
  
Usuarios navegando en este tema: 6 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.