Se connecter

Informatique

Programmation

Sujet : Capture d'écran, mauvaise utilisation de ma fonction?
1
artanno62
Niveau 10
18 août 2017 à 17:22:45

Bonjour,

Je viens ici car je ne comprends vraiment pas l'utilisation de la fonction dump de pdcurse.

scr_dump() : int

D'aprés les sources :

The function scr_dump() can be used to dump the screen contents to a file given as an
argument. Later it can be restored by scr_restore function. These two simple functions can be used effectively
to maintain a fast moving game with changing scenarios.

Source : http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/NCURSES-Programming-HOWTO.pdf (Page 36).

De se que j'ai compris, on viens "capturer l'ecran" avec la fonction "scr_dump" qui vas etre mi dans un fichier à la racine du programme (Chose qui fonctionne pour moi car le fichier est créé) et qui vas pouvoir être restauré grâce à la fonction "scr_restore" avec en paramétre le fichier.

J'ai donc créer ce programme pour m'entrainer :

int main(){
 
    // Initialisation //
 
    initscr();
    raw();
    noecho();
    resize_term(50, 100);
 
    // Programme //
 
    move(15, 15); // On écrit au centre
 
    printw("Bonjour");
    refresh();
    scr_dump("test"); // On "capture" l'écran
 
    clear(); // On nettoie
    printw("Aurevoir");
    refresh();
 
    clear(); // On re-nettoie
    scr_restore("test"); // On affiche le contenu enrengistré dans le fichier test
    refresh();
 
 
 
    // Fin du programme //
 
    refresh();
    getch();
    endwin();
 
    return 0;
}

Probléme : Ecran noir, le contenu du fichier "test" (Bien créer dans mon répértoire) n'est pas retranscrit dans ma console. Le programme se contente juste d'effacer mon écran avec le "clear()" et il n'affiche plus rien à la suite..

Je sais bien que j'utilise mal la fonction, mais je ne sais vraiment pas de ou viens le soucis. J'ai essayé plein de variante, mais rien n'y fait. De plus peu d'exemple sur cette fonction sur le net.

Si vous pouviez m'éclairer, ça serait génial.

Merci beaucoup!

toupine
Niveau 26
19 août 2017 à 01:06:07

Ça avait l'air marrant donc j'ai essayé aussi. Du coup j'ai vu que si tu enlève le clear juste avant le restore, ça marche.
Pourquoi ? J'en sais rien, j'ai pas encore lu la doc [[sticker:p/1kky]]

artanno62
Niveau 10
19 août 2017 à 15:23:56

Effectivement!!

Je dois raffraichir la page avant de capturer l'ecran forcement, mais je dois aussi raffraichir aprés avoir clear() ! Bizarre mais cela fonctionne effectivement! Un grand merci à toi Toupine!

Arta.

1
Sujet : Capture d'écran, mauvaise utilisation de ma fonction?
   Retour haut de page
Consulter la version web de cette page