Bem vindo ao LifeGames Demo
Cadastre-se agora para ter acesso a todos os nossos recursos. Uma vez cadastrado e logado, você será capaz de criar tópicos, postar respostas a tópicos já existentes, a reputação de seus companheiros, começar seu próprio mensageiro privado, atualizações de status post, gerir o seu perfil e muito mais. Esta mensagem será removida assim que tiver logado.
Entrar Cadastre-se


Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 gtk em c/c++ - 14º parte em Dom Jun 30, 2013 10:14 pm

Moedas Moedas : 201
Mensagens Mensagens : 92
Humor Humor : *-*
Reputação Reputação : 5
Quebra de regras:
0 / 1000 / 100

avatar

hacker fts315

Moderador Informática

Moderador Informática

bom galera essa e a 14º parte do tutorial, começando ele com um janela basica

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();
}

uma boa maneira de separar os widgets e usar o notebook (nao um computador portatil ne '-' ), os notebooks e um widget q parace um frame ou varios frames separado por botoes q alterna entre eles, para criar um notebook usamos a funçao gtk_notebook_new e atribuimos ele a um ponteiro do tipo GtkWidget

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

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

agora temos q criar as paginas do notebook para isso usamos a funçao gtk_notebook_append_page passamos como argumento o notebook, depois passamos como argumento um widget q seria conteudo dentro da pagina (recomendo usar fixed aq, mais nesse exemplo coloquei um label), e o ultimo argumento e o titulo para isso usamos um outro widget label

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

int main(int argc, char **argv)
{
   GtkWidget *janela, *note, *titulo, *conteudo;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   note = gtk_notebook_new();
   titulo = gtk_label_new("autor");
   conteudo = gtk_label_new("autor: hacker fts315");
   gtk_container_add(GTK_CONTAINER(janela),note);
   gtk_notebook_append_page(GTK_NOTEBOOK(note),conteudo,titulo);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}

[Você precisa estar registrado e conectado para ver esta imagem.]

outro exemplo

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

int main(int argc, char **argv)
{
   GtkWidget *janela, *note, *titulo, *conteudo, *titulo2, *conteudo2;
   gtk_init(&argc,&argv);
   janela = gtk_window_new(GTK_WINDOW_TOPLEVEL);
   note = gtk_notebook_new();
   titulo = gtk_label_new("autor");
   conteudo = gtk_label_new("autor: hacker fts315");
   titulo2 = gtk_label_new("outra coisa");
   conteudo2 = gtk_label_new("testando 123\ntestando 123");
   gtk_container_add(GTK_CONTAINER(janela),note);
   gtk_notebook_append_page(GTK_NOTEBOOK(note),conteudo,titulo);
   gtk_notebook_append_page(GTK_NOTEBOOK(note),conteudo2,titulo2);
   gtk_widget_show_all(janela);
   g_signal_connect(GTK_OBJECT(janela),"destroy",G_CALLBACK(gtk_main_quit),NULL);
   gtk_main();
}

[Você precisa estar registrado e conectado para ver esta imagem.]

bom galera e isso ^^

by hacker fts315



[center][Você precisa estar registrado e conectado para ver esta imagem.]


Contato:
Facebook: [Você precisa estar registrado e conectado para ver este link.]
Ask: [Você precisa estar registrado e conectado para ver este link.]
Ver perfil do usuário http://www.facebook.com/hacker.fts315

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

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