PDA

Ver la Versión Completa : Cual es el modo correcto de usar la opción de escalar


cocute
10-11-2013, 09:11:24
Pues eso como se puede hacer eso teniendo en cuenta la cantidad de tamaños
de pantalla de diversos dispositivos android (moviles, tablets, smartv....),
ya se que muchos controles con el tema del alineado se adaptan
pero si estamos usando botones, textos y demás para adaptarlos
a cualquier pantalla y que no se descuaringe el diseño que metodología habría que usar?

Recuerdo que para delphi normal para programas en windows existía algún componente VCL
que hacía eso automáticamente, pero para android creo que no servirá
este por ejemplo:
http://www.imagekit.com/resizekit2.html

Seguramente en Android habrá algun modo de hacerlo más fácil

cocute
10-11-2013, 09:39:16
ya veo que los controles de Firemonkey tienen la opción scale,
imagino que habrá que jugar con eso.

cocute
11-11-2013, 09:43:10
Mi intención es que al al redimensionar un form se redimensione el tabcontrol que está en AlClient y todo lo que contiene dentro,

con esta opción chapucera me funciona más o menos, pero con algunos problemas con algunos controles:
Partiendo de que el form es de 633x379

procedure TForm1.FormResize(Sender: TObject);
begin
if form1.Width>633 then tabcontrol1.Scale.X:=form1.Width/633;
if form1.Height>379 then tabcontrol1.Scale.y:=form1.Height/379;
end;

Cual es la forma correcta de que al redimensionar un form se escale todo su contenido?
Un problema que me encuentro es que algunos controles que tienen menús desplegables, este menu no se redimensiona correctamente.
Por ejemplo con los Tcombotrackbar, o los memos que pierden los botones de scrooll

muchas gracias.

cocute
12-11-2013, 22:46:39
Poniendo el componente scaledlayout no hace falta hacer nada, se redimensiona todos los componentes que pongas.

Pero tiene un problema, es que los componentes que tienen cosas desplegables pierden parte del contenido,
como ocurre con el tcalendaredit, aunque pasa con todos que tienen algo desplegable:
http://i.imgur.com/I6v48wg.png

Creo que es un bug de Delphi XE5

No se si estará corregido en el Update1

donald shimoda
13-11-2013, 17:33:47
Poniendo el componente scaledlayout no hace falta hacer nada, se redimensiona todos los componentes que pongas.

Pero tiene un problema, es que los componentes que tienen cosas desplegables pierden parte del contenido,
como ocurre con el tcalendaredit, aunque pasa con todos que tienen algo desplegable:
http://i.imgur.com/I6v48wg.png

Creo que es un bug de Delphi XE5

No se si estará corregido en el Update1

Amigo, hasta donde pude ver, igual que pasa en la vcl y app de escritorio, no esta completamente resuelto. En desktop puedes usar layout controlllers de devexpress , por ejemplo, lo manejan bastante bien.

Ahora en android, mi experiencia personal, es que a menos que manejes muchos containers y que eso de con el estilo de lo que quieres hacer, usan las propiedades align correctamente , difícil que te quede un buen diseño cuando cambias de resolución.

Ni que hablar si pasas a Windows la misma app firemonkey, o entre android e iOS...

Mi consejo es tratar de separar la parte visual del comportamiento y generar un form para cada destino o bien sacrificar belleza por practicidad, en este momento no hay otra.

Saludos.

cocute
14-11-2013, 09:04:29
pero en los componentes vcl no está la propiedad scale,
yo creo que es un problema de que firemonkey aun está verde,
esperaré a nuevos updates a ver.