Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 27/05/2008, à 15:41

Val3rian

[ Perl ] glib::timeout provoque erreur: Can't locate object method

Bonjour,

Je programme un petit logiciel qui va changer mon wallpaper toutes x secondes/minutes.

J'utilise un fichier .xml qui contient les wallpapers et leurs propriétés (couleurs de fond, centré/étiré/redimensionné/...).
Ce fichier est lu et mis en mémoire.

Ensuite, une fonction choisit un wallpaper au hasard et l'affiche. Jusque la, pas de problème.

Mais il me faudrait maintenant appeler cette fonction à un interval x.

Gtk2->main;

$timer=Glib::timeout->add($change_millisec, \&Change_Wallpaper);

Mais cela ne fonctionne pas...

J'obtiens l'erreur suivante:

***   Can't locate object method "add" via package "Glib::timeout" (perhaps you forgot to load "Glib::timeout"?) at grw.pl line 107.
***  ignoring at grw.pl line 72.

J'ai bien mis "use glib" et la lib est installée :s

Comment puis-je résoudre ça ? Ou avez-vous une alternative (autre qu'un sleep qui empêcherait mon programme de faire autre chose comme rajouter un wall, changer manuellement de wall, etc)?

Merci d'avance smile

#2 Le 27/05/2008, à 19:16

Val3rian

Re : [ Perl ] glib::timeout provoque erreur: Can't locate object method

Bonjour,

J'ai contourné le problème en utilisant un mécanisme différent avec un sleep dans un fonction threadé ...

Merci quand même.