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: 6554 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 para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #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; } |
![]() |
Vamos testar seus conhecimentos em |
Características do concreto armado Os domínios de deformação em concreto armado são categorias que descrevem diferentes estados de deformação do material em relação às tensões aplicadas. Cada domínio corresponde a um comportamento específico do material e pode ser usado para entender como o concreto e o aço de reforço interagem sob diferentes condições de carga. Nesse sentido, assinale a alternativa que traz o domínio no qual as peças de concreto armado devem ser projetadas de modo a melhor aproveitar as resistências dos materiais. A) Domínio 1. B) Domínio 2. C) Domínio 3. D) Domínio 4. E) Domínio 5. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?valor = 5 for i in range(0, 4): valor++ print("O valor final é: {0} ".format(valor)) A) O valor final é: 8 B) O valor final é: 9 C) Erro de SyntaxError: invalid syntax na linha 3 D) O valor final é: 7 E) Erro de SyntaxError: invalid syntax na linha 2 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Densidade de um fluido Um fluido encontra-se em um recipiente com volume de 300L. Sabendo que a massa desse fluido é de 2kg, qual a sua densidade em kg/m3? A) 0,67kg/m3. B) 6,67kg/m3. C) 0,15kg/m3. D) 150kg/m3. E) 151,5kg/m3. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Resistência do concreto Utilizando como base os critérios para avaliação da resistência à tração do concreto, expostos no item 8.2.5 da NBR 6118/2014 - Projeto de Estruturas de Concreto - Procedimento, na falta de ensaios específicos, determine qual seria a resistência característica à tração superior e inferior de um concreto com fck = 30 MPa. A) fctk,inf = 1,8 MPa; fctk,sup = 3,3 MPa. B) fctk,inf = 2 Mpa; fctk,sup = 3,8 MPa. C) fctk,inf = 2,3 MPa; fctk,sup = 4,2 MPa. D) fctk,inf = 2,5 MPa; fctk,sup = 4,6 MPa. E) fctk,inf = 2,7 MPa; fctk,sup = 4,9 MPa. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Cisalhamento e detalhamento de vigas A NBR 6118 (ABNT, 2014) determina que todos os elementos lineares submetidos à força cortante devem conter armadura transversal mínima (ρSW) constituída por estribos. Nesse contexo, marque a alternativa correta: A) O diâmetro da barra que constitui o estribo não pode exceder 20% da menor largura da viga. B) O diâmetro da barra que constitui o estribo deve ser exatamente de 5mm ou menor. C) Nos estribos em que as barras são lisas, o diâmetro não pode ser superior a 10mm. D) O espaçamento máximo entre as barras transversais dos estribos não deve ser superior a 20cm. E) O espaçamento mínimo adequado dos estribos deve ser aquele que permita a introdução do vibrador. Verificar Resposta Estudar Cards Todas as Questões |
Veja mais Dicas e truques de GTK+ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |