[Kde-br] Ajudinha com QML
Sandro Andrade
sandroandrade em kde.org
Quinta Maio 24 14:52:20 UTC 2012
O ListModel do QML é um bom caminho pra isso !
--
Sandro
2012/5/24 Tomaz Canabrava <tcanabrava em kde.org>
> 2012/5/24 Rodrigo Oliveira <mdkcore em gmail.com>:
> > Você não pode atribuir ids.
> >
> > Creio que para o que tu estás fazendo, pode tentar utilizar States +
> > PropertyChanges, da uma olhada:
> > http://qt-project.org/doc/qt-4.8/qml-state.html
> >
> > E boa sorte ;)
>
> Eu pensei em usar States + PropertyChanges, mas isso daria um trabalho
> consideravel, pois teria que fazer um estado para cada transição de
> slide, imagino que tenha uma solução melhor, utilizando JavaScript pra
> controlar isso.
>
> Acho que terei que usar um ListModel programar uma View, já que com
> isso eu consigo mudar o CurrentIndex de forma mais simples.
>
> Ou enviar a lista de ID's que eu quero pra o JavaScript, e montar um
> array com eles.
> hm....
>
> > 2012/5/24 Tomaz Canabrava <tcanabrava em kde.org>:
> >> Negos,
> >>
> >> Estou pela primeira vez tentando estudar QML de forma séria, e com
> >> alguns problemas, aparentemente o QML é estático, precisando de ajuda
> >> de JavaScripts externos ou integração com o C++ para funcionar com um
> >> pouco de programação.
> >> O que estou tentando fazer:
> >>
> >> Sistema pequeno de apresentação de Slides, com navegação manual pelo
> teclado.
> >>
> >>
> >> O que consegui fazer:
> >>
> >> Criei módulos novos do QML para Botão, Page, Title, então tenho algo
> >> próximo a isso aqui:
> >>
> >>
> >> import QtQuick 1.0
> >> import "controller.js" as Controller
> >>
> >> Rectangle{
> >> id: presentation; width: 800; height:600;
> >> property QtObject current : p1; // O slide exibido atualmente.
> >>
> >> Page{ id: p1; Title{ text: "Pagina 1"; } ; visible : true; }
> >> Page{ id: p2; Title{ text: "Pagina 2"; } ; visible : false; }
> >> Page{ id: p3; Title{ text: "Pagina 3"; } ; visible : false; }
> >> Page{ id: p4; Title{ text: "Pagina 4"; } ; visible : false; }
> >>
> >> Button{
> >> text: "→";
> >> onClicked : {
> >> presentation.current.visible = false;
> >> presentation.current = Controller.next();
> >> presentation.visible = true;
> >> }
> >> }
> >>
> >> Keys.onLeftPressed: {
> >> presentation.current.visible = false;
> >> presentation.current = Controller.next();
> >> presentation.visible = true;
> >> }
> >> }
> >>
> >> E a implementação do Controller.next é:
> >>
> >> var pos = 0;
> >> function next(){
> >> return "p"+pos++;
> >> }
> >>
> >>
> >> Eu sei que está errado, pois eu preciso retornar o ID ao invés de uma
> >> String, o problema é que não tenho a menor idéia de como fazer isso, e
> >> nos exemplos que vem com o Qt, me perdi no código, eles passam de algo
> >> básico pra algo bastante avançado,
> >> tou perdidinho perdidinho. =(
> >>
> >> Tomaz
> >> _______________________________________________
> >> Kde-br mailing list
> >> Kde-br em kde.org
> >> https://mail.kde.org/mailman/listinfo/kde-br
> >
> >
> >
> > --
> > ⠠⠵
> > --
> > --- Projects ---
> > -- http://projects.thecoreme.org --
> > --- Blog ---
> > -- http://blog.thecoreme.org --
> > --
> > _______________________________________________
> > Kde-br mailing list
> > Kde-br em kde.org
> > https://mail.kde.org/mailman/listinfo/kde-br
> _______________________________________________
> Kde-br mailing list
> Kde-br em kde.org
> https://mail.kde.org/mailman/listinfo/kde-br
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <https://mail.kde.org/mailman/private/kde-br/attachments/20120524/72538504/attachment.html>
Mais detalhes sobre a lista de discussão Kde-br