Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''gtk''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 3 registros

  1. #include <stdlib.h> #include <stdio.h> #include <string.h> GtkWidget *entry; int first_number = -1; int second_number = -1; char symbol = '+'; int need_clear = 0; int has_press_symbol = 0; int has_press_number = 0; int main(int argc, char *argv[]) { /*init window*/ gtk_init(&argc, &argv); GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(delete_event), NULL); gtk_window_set_default_size(GTK_WINDOW(window), 400, 400); gtk_window_set_title(GTK_WINDOW(window), "calculator"); gtk_container_set_border_width(GTK_CONTAINER(window), 10); /*init layout*/ GtkWidget *vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(window), vbox); gtk_widget_show(vbox); GtkWidget *hbox1 = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(vbox), hbox1); entry = malloc(sizeof(GtkWidget)); memset(entry, 0, sizeof(GtkWidget)); entry = gtk_entry_new(); gtk_editable_set_editable(GTK_EDITABLE(entry), FALSE); gtk_widget_set_direction(entry, GTK_TEXT_DIR_RTL); gtk_entry_set_text(GTK_ENTRY(entry), "0"); gtk_box_pack_start(GTK_BOX(hbox1), entry, TRUE, TRUE, 0); gtk_widget_show(entry); GtkWidget *button = gtk_button_new_with_label("清零"); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(clear), NULL); gtk_box_pack_start(GTK_BOX(hbox1), button, TRUE, TRUE, 0); gtk_widget_show(button); gtk_widget_show(hbox1); GtkWidget *hbox2 = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(vbox), hbox2); create_num_button(hbox2, button, "7"); create_num_button(hbox2, button, "8"); create_num_button(hbox2, button, "9"); button = gtk_button_new_with_label("+"); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(click_symbol), (gpointer)'+'); gtk_box_pack_start(GTK_BOX(hbox2), button, TRUE, TRUE, 0); gtk_widget_show(button); gtk_widget_show(hbox2); GtkWidget *hbox3 = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(vbox), hbox3); create_num_button(hbox3, button, "4"); create_num_button(hbox3, button, "5"); create_num_button(hbox3, button, "6"); button = gtk_button_new_with_label("-"); gtk_box_pack_start(GTK_BOX(hbox3), button, TRUE, TRUE, 0); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(click_symbol), (gpointer)'-'); gtk_widget_show(button); gtk_widget_show(hbox3); GtkWidget *hbox4 = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(vbox), hbox4); create_num_button(hbox4, button, "1"); create_num_button(hbox4, button, "2"); create_num_button(hbox4, button, "3"); button = gtk_button_new_with_label("*"); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(click_symbol), (gpointer)'*'); gtk_box_pack_start(GTK_BOX(hbox4), button, TRUE, TRUE, 0); gtk_widget_show(button); gtk_widget_show(hbox4); GtkWidget *hbox5 = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(vbox), hbox5); create_num_button(hbox5, button, "0"); button = gtk_button_new_with_label("="); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(submit), NULL); gtk_box_pack_start(GTK_BOX(hbox5), button, TRUE, TRUE, 0); gtk_widget_show(button); button = gtk_button_new_with_label("/"); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(click_symbol), (gpointer)'/'); gtk_box_pack_start(GTK_BOX(hbox5), button, TRUE, TRUE, 0); gtk_widget_show(button); gtk_widget_show(hbox5); gtk_widget_show(window); gtk_main(); exit(0); } gint delete_event(GtkWidget *window, GdkEvent *event, gpointer data) { gtk_main_quit(); return FALSE; } void create_num_button(GtkWidget *box, GtkWidget *button, char* button_num) { button = gtk_button_new_with_label(button_num); g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(click_number), (gpointer)button_num); gtk_box_pack_start(GTK_BOX(box), button, TRUE, TRUE, 0); gtk_widget_show(button); } void click_number(GtkWidget *widget, gpointer data) { if(need_clear) { gtk_entry_set_text(GTK_ENTRY(entry), "0"); need_clear = 0; } char* button_num = (char*)data; int entry_int = get_entry_value(); if(entry_int == 0) gtk_entry_set_text(GTK_ENTRY(entry), button_num); else gtk_entry_append_text(GTK_ENTRY(entry), button_num); has_press_number = 1; has_press_symbol = 0; } void clear(GtkWidget *widget, gpointer data) { gtk_entry_set_text(GTK_ENTRY(entry), "0"); first_number = -1; second_number = -1; has_press_number = 0; has_press_symbol = 0; need_clear = 0; symbol = '+'; } void click_symbol(GtkWidget *widget, gpointer data) { if(has_press_symbol == 0) { if(second_number == -1 && first_number == -1 && has_press_number == 0) {} else if(second_number == -1 && first_number == -1 && has_press_number == 1) { first_number = get_entry_value(); has_press_number = 0; } else if(second_number == -1 && first_number != -1 && has_press_number == 1) { second_number = get_entry_value(); first_number = calculator(symbol); second_number = -1; char* result_string = malloc(sizeof(char) * 10); memset(result_string, 0, 10); sprintf(result_string, "%d", first_number); gtk_entry_set_text(GTK_ENTRY(entry), result_string); } symbol = (char)data; need_clear = 1; has_press_symbol = 1; } } void submit(GtkWidget *widget, gpointer data) { second_number = get_entry_value(); int result = calculator(symbol); second_number = -1; has_press_symbol = 0; has_press_number = 0; first_number = result; char* result_string = malloc(sizeof(char) * 10); memset(result_string, 0, 10); sprintf(result_string, "%d", result); gtk_entry_set_text(GTK_ENTRY(entry), result_string); } int calculator(char symbol) { int result; switch(symbol) { case '+': result = first_number + second_number; break; case '-': result = first_number - second_number; break; case '*': result = first_number * second_number; break; case '/': result = first_number / second_number; break; default: printf("error\n"); return; } return result; } int get_entry_value() { const char* entry_string = gtk_entry_get_text(GTK_ENTRY(entry)); int entry_int = *entry_string - '0'; entry_string++; while(*entry_string != '\0') { entry_int = entry_int * 10 + (*entry_string - '0'); entry_string++; } return entry_int; } #ifndef CALCULATOR_H #define CALCULATOR_H #include <gtk/gtk.h> typedef struct calbutton { char *value; GtkWidget *button; }calbutton; /*function prototype*/ gint delete_event(GtkWidget *window, GdkEvent *event, gpointer data); void create_num_button(GtkWidget *box, GtkWidget *button, char* button_num); void click_number(GtkWidget *widget, gpointer data); void clear(GtkWidget *widget, gpointer data); void submit(GtkWidget *widget, gpointer data); void add(GtkWidget *widget, gpointer data); void sub(GtkWidget *widget, gpointer data); void mul(GtkWidget *widget, gpointer data); void division(GtkWidget *widget, gpointer data); void click_symbol(GtkWidget *widget, gpointer data); int calculator(char symbol); #endif
  2. Galera , estou com o pdf do php-gtk do author pablo dall'oglio. quem quiser o pdf do livro entre em contato no meu email: relaie22@gmail.com
  3. OKTY

    Python com OpenGL

    Bom dia pessoal, estou com um problema, estou precisando criar uma gui em python para dar suporte para uma aplicação maior, mais profissional, usando OpenGL, alguém ai conhece alguma biblioteca que eu posso utilizar para fazer essa interface com exibição em OpenGL? Iria precisar fazer os botões e objetos da interface e um espaço para exibição 3D. Eu já tenho experiencia com freeglut em C, porém o glui é muito simples para essa aplicação. Obrigado.
×
×
  • Criar Novo...