janelinha para executar comandos com system(), C/GTK
Publicado por Marcos Melo 22/11/2004
[ Hits: 9.529 ]
Programinha meio funcional, que executa o comando digitado numa caixa de texto.
Usa GTK.
#include <gtk/gtk.h> #include <stdio.h> void executar(GtkWidget *w, gpointer comando){ char *executa; executa = gtk_entry_get_text(w); int a; /*adiciona "&" ao final do comando digitado na caixa de texto */ for (a=0;executa[a]!='{FONTE}';a++){} executa[a++]=' '; executa[a++]='&'; executa[a++]='{FONTE}'; /* fim da rotina */ system(executa); g_print("comando:%s\n",gtk_entry_get_text(w)); gtk_entry_set_text(w,""); gtk_main_quit(); } void texto_mudado(GtkWidget *w, gpointer p){ g_print("%s\n",gtk_entry_get_text(w)); } int main(int argc , char **argv){ GtkWidget *janela,*caixa,*texto; gtk_init(&argc,&argv); janela=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(janela),"Tecle: comando mais \"ENTER\""); gtk_widget_set_usize(janela,350,30); caixa=gtk_hbox_new(FALSE,10); gtk_container_add(GTK_CONTAINER(janela),caixa); texto=gtk_entry_new_with_max_length(50); gtk_entry_set_text(texto,"digite"); gtk_signal_connect(GTK_OBJECT(texto),"activate", GTK_SIGNAL_FUNC(executar),gtk_entry_get_text(texto)); gtk_signal_connect(GTK_OBJECT(texto),"changed", GTK_SIGNAL_FUNC(texto_mudado),gtk_entry_get_text(texto)); gtk_box_pack_start(GTK_BOX(caixa),texto,TRUE,TRUE,0); g_print("%s",gtk_entry_get_text(texto)); gtk_widget_draw_focus(texto); gtk_widget_set_events(texto,4); gtk_widget_show(janela); gtk_widget_show(caixa); gtk_widget_show(texto); //gtk_entry_set_position(texto,1); gtk_main(); return(0); }
Converter graus Celsius em Fahrenheit e vice-versa
Número par ou ímpar (com operado bit a bit)
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (0)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)