Schrift
[thread]5710[/thread]

Wertübergabe zwischen 2 Perl Programmen (Seite 3)

Leser: 2


<< |< 1 2 3 4 >| >> 40 Einträge, 4 Seiten
Crian
 2003-09-11 16:38
#50422 #50422
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
oder auch crian -at- perl-community -dot- de :-D

ich meinte: Dein Fenster ist ja mehr hoch als breit (ich würde es auch rechts lassen... meins ist da ja auch ;-) - ein tolles Argument *fg), deshalb wäre es doch vielleicht schick, wenn sich der Schriftzug zum Mailthema von unten nach oben erstrecken würde... aber vielleicht führt das auch nur zu Schädigungen der Halswirbel ;-)\n\n

<!--EDIT|Crian|1063283977-->
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
Robby
 2003-09-11 16:48
#50423 #50423
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=Crian,11.09.2003, 14:38]ich meinte: Dein Fenster ist ja mehr hoch als breit (ich würde es auch rechts lassen... meins ist da ja auch ;-) - ein tolles Argument *fg), deshalb wäre es doch vielleicht schick, wenn sich der Schriftzug zum Mailthema von unten nach oben erstrecken würde... aber vielleicht führt das auch nur zu Schädigungen der Halswirbel ;-)[/quote]
http://www.my-smileys.de/gruebel.gif
Nein, schau Dir mal den Screenshot an...

Wat meinste eigentlich mit Deinem Fenster? Hast Du auch schon sowas gebastelt? Mail mal einen Screenshot :)
Kaum macht man es richtig - schon funktioniert es!
Crian
 2003-09-11 19:37
#50424 #50424
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Jaja ich weiß schon, da passt nichts mehr hin senkrecht ... :-D

In "meinem" Fenster befindet sich "nur" ein eigenes Termin-, Geburtstags- und Todoerinnerungstool. Das startet immer beim Windowsstart. Ich kann Dir demnächst gern einen Screenshot schicken...

Wie funktioniert das eigentlich mit dem Wetterdienst, bekommst Du von denen eine Grafik, die Du anzeigst?
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
Dubu
 2003-09-12 02:10
#50425 #50425
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Um noch mal auf das Thema zurueck zu kommen... ;)

@Robbie: Ich denke fuer deine Anwendung ist eine Kombination aus Pipe-open und Tk::fileevent das Passende.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use FileHandle;
...
# Filehandle anlegen
my $fh = new FileHandle;

# Pipe-open
open ($fh, "das_pruefende_programm |") or die "ups... $!";

# Fileevent mit Callback verbinden
$MainWindow->fileevent ($fh, 'readable', \&funktion_die_was_macht);

sub funktion_die_was_macht {
   print <$fh>;   # Oder was anderes, z.B. den Text in ein Widget einfuegen
}

Ich habe hier das Modul FileHandle benutzt, weil Perl bei mir gemeckert hat, wenn ich ein Standard-Filehandle in fileevent() benutzen wollte.
Robby
 2003-09-15 09:38
#50426 #50426
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
[quote=Crian,11.09.2003, 17:37]Jaja ich weiß schon, da passt nichts mehr hin senkrecht ... :-D

In "meinem" Fenster befindet sich "nur" ein eigenes Termin-, Geburtstags- und Todoerinnerungstool. Das startet immer beim Windowsstart. Ich kann Dir demnächst gern einen Screenshot schicken...

Wie funktioniert das eigentlich mit dem Wetterdienst, bekommst Du von denen eine Grafik, die Du anzeigst?[/quote]
Screenshot wäre mal nett :)

Das mit dem Wetterdienst geht so:
wetter.com -> Suche nach PLZ
Die Seite die dann kommt, da sind die ganzen Infos drauf inkl. dem Bild was ich dann bei mir anzeige....

Ich kann den Code gerne posten wenn Du ihn haben willst...
Kaum macht man es richtig - schon funktioniert es!
Robby
 2003-09-15 09:39
#50427 #50427
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
@Dubu

ich werden Deinen Vorschlag nachher mal testen und beischeid geben oder weitere Fragen stellen ;)
Kaum macht man es richtig - schon funktioniert es!
Robby
 2003-09-15 10:17
#50428 #50428
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
@dubu
Dein Beispiel macht bei mir gar nichts....ich bekomme keine Fehlermeldung (also findet er das 2. Programm) aber irgendwie bekomme ich nicht zurück *rätsel*
Kaum macht man es richtig - schon funktioniert es!
Dubu
 2003-09-15 12:27
#50429 #50429
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Vielleicht gibt dein zweites Programm seine Ausgabe nicht zeilenweise aus? Oder gepuffert? (Es wird vom ersten zeilenweise eingelesen, also siehst du erst was, wenn eine Zeile komplett ist.)

Hier ein voll funktionsfaehiges Beispiel:
Code (perl): (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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
##### worker.pl #####
#!/usr/bin/perl
use strict;
use warnings;

$|++;   # ungepuffert schreiben

my $i=0;
while (1) {
        print ++$i, "\n";
        sleep 1;
}



##### caller.pl #####
#!/usr/bin/perl
use strict;
use warnings;
use Tk;
use FileHandle;

my $Mw = MainWindow->new (-title => 'Pipetest');
my $LogWin = $Mw->Text (-width => 80, -height => 20)->pack;
$Mw->Button (-text => 'Exit', -command => sub { exit })->pack;

# Filehandle anlegen
my $fh = new FileHandle;

# Pipe-open
open ($fh, "./worker.pl |") or die "ups... $!";

# Fileevent mit Callback verbinden
$Mw->fileevent ($fh, 'readable', \&funktion_die_was_macht);

$Mw->MainLoop;

###############

sub funktion_die_was_macht {
    $LogWin->insert ('end', "Lese " . <$fh>);
}

#####
Robby
 2003-09-15 12:51
#50430 #50430
User since
2003-08-11
409 Artikel
BenutzerIn
[default_avatar]
@Dubu
Danke für Deine Mühe, aber leider kommt bei mir nur ein Fenster in dem 2 mal Lese drin steht....also kommt wieder nichts an....aber warum?
Kaum macht man es richtig - schon funktioniert es!
Crian
 2003-09-15 15:06
#50431 #50431
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Hmm komisch, sieht eigentlich gut aus.
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
<< |< 1 2 3 4 >| >> 40 Einträge, 4 Seiten



View all threads created 2003-09-11 10:04.