janelinha para executar comandos com system(), C/GTK
Publicado por Marcos Melo 22/11/2004
[ Hits: 9.411 ]
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); }
Implementação de limpar a tela em C
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta