janelinha para executar comandos com system(), C/GTK

Publicado por Marcos Melo 22/11/2004

[ Hits: 9.521 ]

Download executar.c




Programinha meio funcional, que executa  o comando digitado numa caixa de texto.
Usa GTK.

  



Esconder código-fonte

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

Scripts recomendados

Calcular expressões aritméticas com 2 termos

Tabuada e porcentagem em C

Determinando resultado de uma partida futebol (iniciante)

Seu primeiro programa em C

Uma ajuda para quem gosta de Geometria Analítica


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts