Interface gráfica do usuário [fechada]

0

Estou fazendo desenvolvimento em C ++. Ouvi dizer que o GTK está sendo substituído pelo Wayland.

Quais bibliotecas GUI são adequadas para C ++ para longo prazo?

    
por gnwdjybwb 10.06.2018 / 20:31

2 respostas

4

Wayland é um substituto para X11 . O GTK + ainda é o kit de ferramentas GUI usado pelo GNOME e alguns outros ambientes de desktop e não há planos para substituí-lo.

As duas grandes bibliotecas GUI para Linux são Qt e GTK + . Ambos podem ser usados com C ++ e provavelmente permanecerão no futuro previsível.

Qual deles é melhor para você depende de qual ambiente de área de trabalho é seu principal alvo. Ambas as bibliotecas podem ser usadas com qualquer ambiente de desktop, mas seu aplicativo terá uma aparência diferente se estiver usando o kit de ferramentas GUI "errado" para seu ambiente de área de trabalho.

Se você quer que seu aplicativo seja usado em outros sistemas além do Linux, o Qt geralmente é a melhor escolha.

    
por Florian Diesch 10.06.2018 / 21:14
1

Glade

Embora você possa usar o código C ++ para instanciar e organizar widgets, isso pode se tornar tedioso e repetitivo em breve. E requer uma recompilação para mostrar as alterações. O aplicativo Glade permite que você layout widgets na tela e, em seguida, salve uma descrição XML da organização.

Isso tem as seguintes vantagens:

  • É necessário menos código C ++.
  • As alterações da interface do usuário podem ser vistas mais rapidamente, para que as interfaces do usuário possam melhorar.
  • Designers sem habilidades de programação podem criar e editar interfaces de usuário.

As interfaces de usuário projetadas no Glade são armazenadas no conhecido formato XML, permitindo fácil integração com ferramentas externas. Você provavelmente desejará usá-lo com ferramentas como o libglade, que pode carregar os arquivos XML e criar as interfaces em tempo de execução.

Para instalar o Glade GTK + User Interface Builder em todas as versões atualmente suportadas do Ubuntu, abra o terminal e digite:

sudo apt install glade  

Para instalar apenas os arquivos de desenvolvimento da biblioteca GTK + sem instalar o tipo Glade:

sudo apt install libgtk-3-dev

Qt Creator

O Qt Creator é um ambiente de desenvolvimento integrado de plataforma cruzada (IDE) projetado para tornar o desenvolvimento com a estrutura de aplicativos Qt mais rápida e fácil.

Inclui:

  • Um editor de código avançado em C ++
  • Layout de GUI integrado e designer de formulários
  • Projete e crie ferramentas de gerenciamento
  • Sistema de ajuda integrado e sensível ao contexto
  • Depurador visual
  • Ferramentas de navegação rápida de código
  • Suporta várias plataformas
  • Qt Quick Designer

Para instalar o QT Creator em todas as versões atualmente suportadas do Ubuntu, abra o terminal e digite:

sudo apt install qtcreator 
$ apt-cache depends qtcreator | grep qt  
qtcreator  
  Depends: libqt5sql5-sqlite  
  Depends: qml-module-qtqml-models2  
  Depends: qml-module-qtquick-controls  
  Depends: qml-module-qtquick2  
  Depends: qtchooser  
    qtchooser:i386  
  Depends: qtcreator-data  
  Depends: libqbsqtprofilesetup1.10  
  Depends: libqt5concurrent5  
  Depends: libqt5core5a   
  Depends: libqt5designer5  
  Depends: libqt5designercomponents5  
  Depends: libqt5gui5  
  Depends: libqt5help5  
  Depends: libqt5network5  
  Depends: libqt5printsupport5  
  Depends: libqt5qml5  
  Depends: libqt5quick5  
  Depends: libqt5quickwidgets5  
  Depends: libqt5sql5  
  Depends: libqt5widgets5  
  Depends: libqt5xml5  
  Depends: <qtdeclarative-abi-5-9-5>  
    libqt5qml5  
  Recommends: qt5-doc  
  Recommends: qt5-qmltooling-plugins  
  Recommends: qtbase5-dev-tools  
    qtbase5-dev-tools:i386  
  Recommends: qtcreator-doc  
  Recommends: qtdeclarative5-dev-tools  
    qtdeclarative5-dev-tools:i386  
  Recommends: qttools5-dev-tools  
    qttools5-dev-tools:i386  
  Recommends: qttranslations5-l10n  
  Recommends: qtxmlpatterns5-dev-tools  
    qtxmlpatterns5-dev-tools:i386  
    qterminal

(Clique na imagem para ampliar)

    
por karel 10.06.2018 / 21:51