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

Publicado por Marcos Melo 22/11/2004

[ Hits: 9.630 ]

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 aumento de salário

Histograma de uma frase

Cálculo do IMC

Encontrar string em ficheiro

Formatador do linux


  

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