Responsividade
A responsividade é um assunto sempre delicado e controverso.
Até mesmo em aplicações 100% web, ter um controle total da responsividade não é uma tarefa fácil.
O uso intenso de CSS e bibliotecas como BootStrap realizam um trabalho fantástico.
Pensando nisso, foi implementado a nível de código, um sistema de grid de 12 colunas que lembra a estrutura do BootStrap.
O resultado ficou muito bom mas está longe de ser a solução completa. Espero poder melhorar ainda mais o processo.
A procedure responsável por ajustar os blocos é "rc_ResizeBlocks".
sintaxe:
rc_ResizeBlocks( pFrame : TObject; pRunBSRender : boolean = true; pRunAlignment : boolean = true; pScrollTop : boolean = true )
pFrame: Identifica o "formulário" que será configurado. Pode ser um frame ou um form.
pRunBsRender: Executa ou não uma renderização dos componentes( bsPill, bsH... ).
pRunAlignment: Executa ou não o alinhamento dinâmico dos componentes( scale:, align: ... ).
pScrollTop: Executa ou não o reposicionamento da barra de scroll.
Nos exemplos do RADCORE( evento click do MENU PRINCIPAL ) é feito uma chamada a "rc_ResizeBlocks"( entre outras ) para iniciar corretamente a renderização dos componentes.
No MainFORM de todas as versões do RadCORE, temos o seguinte evento:
UniFormScreenResize: Ele é chamado quando há alguma alteração nas dimensões da tela.
Várias variáveis globais serão atualizadas para o RadCORE poder renderizar de forma correta os objetos e também para você poder criar recursos adicionais
mm.varI_ScreenWidth: Largura da tela
mm.varI_ScreenHeight: Altura da tela
mm.varB_Mobile_Screen: Tela MOBILE
mm.varB_Mobile_Screen_Portrait: Tela MOBILE VERTICAL
mm.varB_Mobile_Screen_LandScape: Tela MOBILE HORIZONTAL
mm.varB_Screen_LandScape: Tela HORIZONTAL
mm.varB_iOS
mm.varB_Android
mm.varB_Tablet
mm.varB_Desktop
Estude os exemplos que veem junto com o RadCORE.
Created with the Personal Edition of HelpNDoc: Free help authoring environment