Você está aqui: GTK+ ::: Dicas & Truques ::: Formulários e Janelas |
Como definir um ícone para a janela principal de sua aplicação GTK+Quantidade de visualizações: 6625 vezes |
Uma dúvida muito comum dos iniciantes na programação GTK+ é como definir um ícone para a janela principal da aplicação. Isso pode ser feito por meio da função gtk_window_set_icon() do objeto GtkWindow. Esta função recebe um ponteiro para a janela no qual o ícone será exibido e um ponteiro para um objeto GdkPixbuf, usado para guardar a imagem na memória. Note o uso de uma função personalizada para carregar a imagem a ser usada como ícone no objeto GdkPixbuf. O ícone que definimos usando a função gtk_window_set_icon() é usado para representar a janela quando esta estiver minimizada. Alguns ambientes de desktop podem colocá-lo na barra de títulos da janela também. Este é o comportamento padrão esperado nos sistemas desktop modernos. Veja uma aplicação GTK+ completa escrita em C e que usa um ícone chamado icone.png na janela principal. No exemplo o ícone foi disponibilizado na mesma pasta na qual o executável da aplicação está: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <gtk/gtk.h> // protótipo da função que carrega o ícone GdkPixbuf *carregar_icone(const gchar *); // função personalizada usada para carregar o ícone a ser // definido para a janela principal GdkPixbuf *carregar_icone(const gchar *arquivo){ GdkPixbuf *pixbuf; GError *erro = NULL; pixbuf = gdk_pixbuf_new_from_file(arquivo, &erro); if(!pixbuf){ fprintf(stderr, "%s\n", erro->message); } return pixbuf; } int main(int argc, char *argv[]){ // um ponteiro para um objeto GtkWidget GtkWidget *window; // inicializamos o GTK+ e as bibliotecas de suporte gtk_init(&argc, &argv); // vamos criar uma nova janela e definir seu título window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "Estudos GTK+ com C"); // vamos definir o ícone para a janela principal gtk_window_set_icon(GTK_WINDOW(window), carregar_icone("icone.png")); // exibimos a janela gtk_widget_show(window); // código que destrói a janela principal g_signal_connect_swapped(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL); // entramos no loop principal do GTK+ gtk_main(); // a aplicação GTK+ foi fechada, vamos sair return 0; } |
![]() |
Veja mais Dicas e truques de GTK+ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |