Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/07/2007, 12:24
Avatar de asuka_asakura
asuka_asakura
 
Fecha de Ingreso: julio-2007
Mensajes: 3
Antigüedad: 16 años, 9 meses
Puntos: 0
Ayuda en Perl

Hola a todos, soy nuevita aquí y este es mi primer post, ojala me respondan ^^.

Verán, estoy haciendo un programa en Perl/Tk y necesito bolquear, anular u ocultar el botón de cerrar de la ventana de mi programa, ya que si la ventana se cierra, el programa no cumple su funcion XD ; a todo esto, la funcion de mi programa es filtrar extenciones al momento de subirlas a cierto programa. El problema es que si se cierra la ventana esta funcion no se cumple y no filtra las extenciones que no deberian subirse, por eso necesito eliminar el boton de cerrar la ventana o desactivarlo.

Aqui va mi codigo::

Código:
#C:\Perl\bin\perl5.8.8.exe D:\Harvest\UDPs\FiltraExtensionesVentana.pl ["file"]

use Tk; 
use strict;

my @files=@ARGV[0 .. $#ARGV];

my @errores = Valida(@files);


if ($errores[0]==1){
my $vu_win = MainWindow->new();
$vu_win->configure(-title => "ERROR");
$vu_win->Label(-text => "Error: Los siguientes archivos no pueden ser ingresados. \n Por favor eliminelos del Checkin y realice la operacion nuevamente \n ")->pack(-side => 'top');

my $frame = $vu_win->Frame(-background =>'white')->pack(-side =>'top');
my $scroll = $frame->Scrollbar();
$scroll->pack(-side => 'right', -fill => 'y');
my $display = $frame->Text(-background => 'grey', -height => '15', -width => '60', -yscrollcommand => ['set', $scroll])->pack(-expand => '1', -fill => 'both');
$display->insert('end', "$errores[1]");
$scroll->configure(-command => ['yview', $display]);

#aqui va mi super intento, si no funciona, ya no es mi culpa, la lore me dijo que lo hiciera jajajajaja

#ese fue el aporte *o*

my $bottom=$vu_win->Frame(-background =>'white')->pack(-side =>'bottom');
my $button = $bottom->Button(-text => 'Aceptar', -command => sub{exit 1;}); 
$button->pack(-side => 'left');

MainLoop;

}else{
  exit
}


sub Valida{
  my @file= @_;
  my @nopermitidos="";
  my $ex;my $arc;my $Sta;my $error;
  
  $error=2;
  foreach $arc (@file)
  {
    $ex = $arc;
    $Sta = index($ex,"\\") + 2;
    $ex = substr($arc,$Sta);
    $ex =~ tr/A-Z/a-z/;
    if (( $ex !~ /\.doc/ ) & ( $ex !~ /\.txt/ ))
    {
      $error=1;
      @nopermitidos="@nopermitidos $ex \n";
    }
  }
  
      
return $error, @nopermitidos;
}

Ojala puedan darme una solucion, de ante mano, muchas gracias.

Atte.
Asukita

Última edición por asuka_asakura; 25/07/2007 a las 12:27 Razón: mala ortografia XD