gtk em c/c++ - 5º parte

Ir em baixo

gtk em c/c++ - 5º parte

Mensagem por Flavio315 em Qui Jun 20, 2013 1:42 pm

bom galera continuando o tutorial gtk em c/c++ vamos começar esse escrevendo uma janela simples

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}

no tutorial anterior usamos o fixed para poder manipular a posiçao dos widgets dentro da janela nesse vamos usar o vbox e hbox para manipular manualmente a posiçao vertical e horizontal dentro da janela, primeiro vamos criar o vbox usando a funçao gtk_vbox_new passamos como argumento FALSE e o numero 0, e atribuimos ele a um ponteiro do tipo GtkWidget e tambem colocamos ele na janela com gtk_container_add

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela, *vbox;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   vbox = gtk_vbox_new(FALSE,0);
   gtk_container_add(GTK_CONTAINER(janela),vbox);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}

para facilitar a visualizaçao do tutorial vamos criar um botao tambem

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela, *vbox, *botao;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   vbox = gtk_vbox_new(FALSE,0);
   botao = gtk_button_new_with_label("by hacker fts315");
   gtk_container_add(GTK_CONTAINER(janela),vbox);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}

para agente colocar o botao dentro do vbox usamos a funçao gtk_box_pack_start ou gtk_box_pack_end o primeiro ele coloca de cima pra baixo da esquerda para direta, o end coloca de baixo pra cima da direita pra esquerda, passamos como argumento para ela o vbox depois o widget q agente vai adicionar, FALSE, FALSE, e a posiçao horizontal 

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela, *vbox, *botao;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   vbox = gtk_vbox_new(FALSE,0);
   botao = gtk_button_new_with_label("by hacker fts315");
   gtk_container_add(GTK_CONTAINER(janela),vbox);
   gtk_box_pack_start(GTK_BOX(vbox),botao,FALSE,TRUE,50);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}



o mesmo vale para o hbox

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela, *hbox, *botao;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   hbox = gtk_hbox_new(FALSE,0);
   botao = gtk_button_new_with_label("by hacker fts315");
   gtk_container_add(GTK_CONTAINER(janela),hbox);
   gtk_box_pack_start(GTK_BOX(hbox),botao,FALSE,FALSE,50);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}



se agente criar um vbox colocar um hbox dentro do vbox e botao dentro do hbox agente vai ta manipulando a posiçao vertical e horizontal

Código:
#include <stdio.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
   GtkWidget *janela, *vbox, *hbox, *botao;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   vbox = gtk_vbox_new(FALSE,0);
   hbox = gtk_hbox_new(FALSE,0);
   botao = gtk_button_new_with_label("by hacker fts315");
   gtk_container_add(GTK_CONTAINER(janela),vbox);
   gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,50);
   gtk_box_pack_start(GTK_BOX(hbox),botao,FALSE,FALSE,50);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}



bom galera e isso, ate o proximo ^^

by hacker fts315






Olá Caro usuario, olhe essas Dicas Importantes:
Respeite as [Você precisa estar registrado e conectado para ver este link.].
- [Você precisa estar registrado e conectado para ver este link.].
Fique atento a o [Você precisa estar registrado e conectado para ver este link.].
Veja os [Você precisa estar registrado e conectado para ver este link.] do fórum.
Não peça suporte por MP ou no Chat-Box.
avatar
Flavio315
Moderapixel

Quebra de regras Quebra de regras :
0 / 1000 / 100

Masculino Mensagens Mensagens : 54
Pontos Pontos : 146
Reputação Reputação : 0
Data de inscrição Data de inscrição : 19/06/2013
Localização : sub-mundo da informatica

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: gtk em c/c++ - 5º parte

Mensagem por Detoxx em Qui Jun 20, 2013 2:20 pm

Obrigado Por Com o Fórum
Até






Olá Caro usuario, olhe essas Dicas Importantes:
Respeite as [Você precisa estar registrado e conectado para ver este link.].
- [Você precisa estar registrado e conectado para ver este link.].
Fique atento a o [Você precisa estar registrado e conectado para ver este link.].
Veja os [Você precisa estar registrado e conectado para ver este link.] do fórum.
Não peça suporte por MP ou no Chat-Box.
avatar
Detoxx
Moderapixel

Quebra de regras Quebra de regras :
0 / 1000 / 100

Masculino Mensagens Mensagens : 76
Pontos Pontos : 86
Reputação Reputação : 0
Data de inscrição Data de inscrição : 19/06/2013
Idade Idade : 17
Localização : Aracaju

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum