Schrift
[thread]5117[/thread]

Befehl solange ausführen wie button gedrückt

Leser: 1


<< |< 1 2 >| >> 11 Einträge, 2 Seiten
popcorn5
 2005-11-02 11:39
#44844 #44844
User since
2003-09-24
60 Artikel
BenutzerIn
[default_avatar]
hallo mal wieder...

gibts ne möglichkeit einen befehl (oder einfach ne schleife) solange zu durchlaufen wie ein button gedrückt wird. oder alternativ: gibts auch die möglichkeit festzustellen wann ein button losgelassen wurde ?

danke
esskar
 2005-11-02 11:40
#44845 #44845
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
eine taste oder ein gui-knopf?
popcorn5
 2005-11-02 12:09
#44846 #44846
User since
2003-09-24
60 Artikel
BenutzerIn
[default_avatar]
was ist der unerschied ?

hier mal das test-script:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/perl -w

use strict;
use Tk;

&hauptfenster();
sub hauptfenster
{
my $hauptfenster=new MainWindow(-title=>"Manuelles fahren", -width=>"640", -height=>"480");
my $text1=$hauptfenster->Label(-text=>"Drücken Sie auf die Tasten um die Mschine zu bewegen", -relief=>"groove");
$text1->place(-x=>"20", -y=>"20", -width=>"600", -height=>"50");

my $button1=$hauptfenster->Button(-text=>"hoch", -command=>sub{&fahr("oben")});
$button1->place(-x=>"270", -y=>"100", -width=>"100", -height=>"100");

my $button2=$hauptfenster->Button(-text=>"links", -command=>sub{&fahr("links")});
$button2->place(-x=>"170", -y=>"200", -width=>"100", -height=>"100");

my $button3=$hauptfenster->Button(-text=>"rechts", -command=>sub{&fahr("rechts")});
$button3->place(-x=>"370", -y=>"200", -width=>"100", -height=>"100");

my $button4=$hauptfenster->Button(-text=>"runter", -command=>sub{&fahr("unten")});
$button4->place(-x=>"270", -y=>"300", -width=>"100", -height=>"100");

MainLoop;

}
renee
 2005-11-02 12:37
#44847 #44847
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
$button1->bind('<ButtonRelease-1>',sub{print "Button 1 losgelassen"});


Code: (dl )
$button1->bind('<ButtonPress-1>',sub{print "Button 1 gedrueckt"});
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2005-11-06 21:34
#44848 #44848
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Vielleicht kannst du auch gleich Tk::FireButton aus der Tk-GBARR-Distribution verwenden.
Matze
 2005-11-07 15:21
#44849 #44849
User since
2005-08-29
222 Artikel
BenutzerIn
[Homepage] [default_avatar]
Wozu genau kann man Tk::FireButton verwenden, und woher bekomme ich das Modul ?
Mit freundlichen Grüßen: Matze
ptk
 2005-11-07 17:24
#44850 #44850
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Wie geschrieben: du findest es in der Tk-GBARR-Distribution. Tk::FireButton ist ein ganz normaler Button, der allerdings -command solange ausführt, wie der Button gedrückt gehalten wird.
Crian
 2005-11-08 18:37
#44851 #44851
User since
2003-08-04
5872 Artikel
ModeratorIn
[Homepage]
user image
schick... sonst so:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use Tk;

my $mw = new MainWindow;

my $b = $mw->Button(-text => 'Run')->pack(-fill => 'x');

my $id;
my $i;

$b->bind('<ButtonPress-1>' => sub { $i = 0;
$id = $mw->repeat(2, sub {print ++$i, "\n"}) } );
$b->bind('<ButtonRelease-1>' => sub { $id->cancel() } );

MainLoop();
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Matze
 2005-11-08 20:51
#44852 #44852
User since
2005-08-29
222 Artikel
BenutzerIn
[Homepage] [default_avatar]
@ptk Danke für die Erklärung.

Allerdings, was ist die Tk-GBARR-Distribution ???

MfG. Matze
Mit freundlichen Grüßen: Matze
ptk
 2005-11-08 22:34
#44853 #44853
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Noch nie ein Perl-Modul aus dem CPAN heraus installiert? Oder per ppm?
Code: (dl )
1
2
perl -MCPAN -eshell
install Tk::FireButton
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2005-11-02 11:39.