Tengo una duda sobre los widgets del GTK2 de Perl. Es en el Gtk2::MessageDialog. Me he estado informando de como construir la estructura de los mensajes, y lo he conseguido. Lo que que quiero hacer ahora es añadir un Gtk2::Table en el mensaje del Gtk2::MessageDialog, y lo que me muestra en diálogo es el hash de la tabla.
La pregunta es: ¿Cómo puedo añadir la tabla en el diálogo?
P.D.: Os añado el código que tengo hecho para que podáis verlo. La duda está en la función "buscaServ".
Using perl Syntax Highlighting
- #!/usr/bin/perl -w
- use strict;
- use Gtk2 '-init';
- # Variables convencionals true i false
- use Glib qw(TRUE FALSE);
- # Crear finestra:
- my $finestra = Gtk2::Window->new('toplevel');
- $finestra->signal_connect (delete_event => sub { Gtk2->main_quit });
- my $vbox = Gtk2::VBox->new(FALSE,5);
- #create table to pack the labels that will demo how mnemonic text work
- # GTK2::Table->($fila,$columna,$homogeni);
- my $taulaBoto = Gtk2::Table->new (1, 2, FALSE);
- #$table->attach_defaults ($widget, $pos_columna_esquerra, $pos_columna_dreta, $pos_fila_top, $pos_fila_bottom)
- my $botoConn = Gtk2::Button->new('Connectar...');
- $taulaBoto->attach_defaults($botoConn,0,1,0,1);
- my $botoDesconn = Gtk2::Button->new("Desconnecta i surt");
- $taulaBoto->attach_defaults($botoDesconn,1,2,0,1);
- $vbox->pack_start($taulaBoto,FALSE,FALSE,4);
- $botoConn->signal_connect('clicked' => \&buscaServ );
- $botoDesconn->signal_connect('clicked' => sub { Gtk2->main_quit });
- sub buscaServ {
- my ($inCon,$labCon,$taulaCon,$dialog,$resposta);
- $taulaCon = Gtk2::Table->new (1, 2, FALSE);
- $inCon = Gtk2::Entry->new(); #Text per escriure
- $taulaCon->attach_defaults ($inCon, 1, 2, 0, 1);
- $labCon = Gtk2::Label->new("Servidor: "); #Text per escriure
- $taulaCon->attach_defaults ($labCon, 0, 1, 0, 1);
- $dialog = Gtk2::MessageDialog->new(undef,
- [qw/modal destroy-with-parent/],
- 'question',
- 'ok-cancel',
- "Introdueix l'adresa del servidor...");
- $dialog->format_secondary_markup($taulaCon);
- $resposta = $dialog->run;
- if ($resposta eq 'ok') {
- print "Si es 'ok' leer el entry añadido al dialogo!!";
- }else{
- print "suerteeeeeee";
- }
- $dialog->destroy;
- }
- $finestra->add($vbox);
- $finestra->show_all;
- Gtk2->main;
- 0;
Coloreado en 0.005 segundos, usando GeSHi 1.0.8.4