Programação para GTK usando Code Blocks 8.02

Iniciado por mhkgalvez, 03 de Outubro de 2009, 21:31

tópico anterior - próximo tópico

mhkgalvez

Olá gente, uso ubuntu 9.04 a pouco tempo e resolvi pegar esta aplicação que descobri hoje para iniciar em programação gráfica para linux. Iniciei um novo projeto para GTK mas não faço a mínima idéia de como programar em C nisso. Estou acostumando com aquelas programações visuais em que agente coloca o objeto na tela e só programa a rotina dele. Alguém me dá um tutorial sobre programação pra GTK em C?
"A quem vencer, eu o farei coluna no templo do meu Deus, e dele nunca sairá; e escreverei sobre ele o nome do meu Deus, e o nome da cidade do meu Deus, a nova Jerusalém, que desce do céu, do meu Deus, e também o meu novo nome."

Cláudio Novais

já tive na sua situação e na altura estudei por aqui:
http://library.gnome.org/devel/gtk-tutorial/stable/

Nesse mesmo link existe versão em PDF...

Espero ter ajudado,
Abraço.

Darcamo

#2
Você também pode programar grande parte da interface graficamente em GTK.
Bom, mexi nisso a uns três anos atrás e o que eu fazia era criar a interface no glade e usar a biblioteca libglade para instanciar as widgets no arquivo gerado pelo glade. Com as widgets instanciadas bastava ligar os callbacks que eu havia implementado (algo como conectar o sinal de clicked de um botão com uma função que programei).

Vale a pena enfatizar que não se deve gerar o código da interface a partir do glade. Isso até era possível antigamente, mas agora é considerado obsoleto. Você apenas instancia (durante a execução) todas as widgets a partir de um único arquivo gerado pelo glade. Cheguei a fazer interface gráfica em GTK tanto em C++ (usando a GTKmm http://www.gtkmm.org/) quanto em python (usando a PyGTK http://www.pygtk.org/) e o procedimento era similar, embora com algumas facilidades a mais em python.

Não sei como está hoje em dia, mas li faz um tempo que a biblioteca libglade vai ser substituída pela GtkBuilder (aqui fala disso http://www.micahcarrick.com/05-30-2008/gtk-builder-libglade-faq.html#2) então sugiro já procurar por tutoriais usando a GtkBuilder se for possível. Caso contrário procura sobre a libglade mesmo.

No site da GTKmm vi que já tem uma seção sobre o GtkBuilder (chamado de Gtk::Builder). Não sei se ajuda, já que é C++ e você está procurando por C, mas no site da GTK deve ter alguma coisa também.

Edit: Tutorial interessante e em C - http://www.micahcarrick.com/12-24-2007/gtk-glade-tutorial-part-1.html
É de 2007, mas deve funcionar.