Pular para conteúdo

Materiais sobre o QtQuick

Em Português:

Em Inglês:

Detalhes adicionais:

  • O QtQuick vem com widgets mais crus por padrão, requer definir propriedades para integrar ao sistema.
  • É a tecnologia recomendada caso for fazer aplicativos mobile.
  • A partir do Qt 5.15 e do Qt 6.0 pra frente, é possível fazer imports sem versionamento.
  • Caso queira verificar as versões das bibliotecas QML que você tem no seu sistema Linux, dentro das pastas /usr/lib64/qt5/qml e /usr/lib64/qt6/qml há arquivos chamados plugins.qmltypes para cada biblioteca. Neles, a versão mínima de cada módulo pode ser vista em linhas contendo a palavra "exports".
  • Lembre-se: filhos de um Layout devem usar attached properties, não anchors.
  • Lembre-se: nunca use anchors e attached properties ao mesmo tempo no mesmo componente.
  • Lembre-se: signals disponíveis ou criados pelo QML automaticamente geram signal handlers do tipo on + Nome (e em certos casos + Changed). Por exemplo, o signal clicked do QtQuick.Controls Button possui o signal handler onClicked; o signal value do QtQuick.Controls Slider possui o signal handler onValueChanged. Signal handlers NÃO aparecem na documentação de referência do Qt.
  • Há certos tipos QML especiais que não precisam de layout ou anchors, como o Repeater, porque internamente eles transferem a relação de pai/filho para cima. Por exemplo, no caso de um ColumnLayout contendo um Repeater de Buttons, os Buttons se tornam filhos diretos do ColumnLayout.
  • A nova API do CMake pro Qt6 qt_add_qml_module já cria resources para você, logo não é necessário (nem recomendado) usar o qt_add_resources junto dele.
  • Singletons feitos pelo QML usando pragma singleton requerem a propriedade QT_QML_SINGLETON_TYPE definida usandos set_source_files_properties().