Results 1 to 1 of 1

Thread: Gtkmm problem to delete widget

  1. #1
    Join Date
    Jul 2012
    Beans
    1

    Gtkmm problem to delete widget

    Hi,

    First, sorry for my english...

    Second, thanks to try to understand me.

    Well, I try to do a program where there are a Gtk::ComboBoxText with the name of different people and a Gtk::Grid where different Gtk::Button. The Button(s) depends the person's schedule selected at ComboBox.

    ComboBoxText and Grid are designed in glade file, but Button are created when program is running, I create them in a function that is called when the combobox signal changed is throw.

    At the first ejecution the program run successfully, but when I change the person in combobox, the new buttons appear but the old buttons don't disappear.
    The function has this structure:

    //First, I (try to) remove all button in grid
    if (num_boton_hora > 0) // num_boton_hora is a integer with the number of button created previously
    {
    for(int j=0; j< num_boton_hora; j++){
    boton_hora[j]->hide(); / /Don't have any error, but don't work like I want
    boton_hora[j]->remove();
    hora->remove(*boton_hora[j]);
    hora->unreference();
    delete boton_hora[j];
    };

    delete[] boton_hora;
    num_boton_hora = 0;
    };

    // connect to database
    ...
    num_boton_hora = ... // the number of rows in select statement
    ...
    // Create button news
    ...
    boton_hora= new Gtk::Button*[num_boton_hora];
    ...
    boton_hora[i]= Gtk::manage(new Gtk::Button(texto));
    ...
    // Add buttons into grid
    ...
    hora->attach(*boton_hora[i],dia,hora_dia,1,1); // hora is a pointer of Gtk::Grid
    ...

    show_all_children();

    }

    I try several things remove, delete,... but I don't make that I want...
    Thanks
    Last edited by maestrodenada; July 2nd, 2012 at 09:13 PM.

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •