IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] apercu de screensaver


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut [MFC] apercu de screensaver
    Bonjour
    Comme le dit mon sujet j'aimerais faire une application qui me mettrais tout les screensaver dans un list control et lorsqu il serais s�lectionner il y aurais un aper�u dans une petite fen�tre du dialog. Un peu comme le fait windows.
    J�esp�re que vous voyer ce que je veu faire si non poster des commentaire
    Je sais comment faire pour avoir tout les screensaver dans le list control mais je ne sais pas comment faire pour afficher un aper�u du screensaver.

    si vous avez une id�e de comment faire ou bien si vous avez des exemples a me donner ce serais appr�cier car moi je n'ai aucune id�e comment je pourrais faire �a.

    a l'avance

  2. #2
    Membre �prouv� Avatar de ken_le_videur
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    129
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 129
    Par d�faut
    Hello,
    windows lance les screensavers avec 4 ou 5 modes distinct, dont config, aper�u, etc...

    Il faut que tu lance le scr en mode apercu, avec le contexte graphique ( hdc ) correspondant � la zone ou tu veut afficher l'aper�u. Et le scr dessine la dedans.

    Je vais chercher plus d'infos sur la mani�re de passer les param�tres, mais le principe est l�.

  3. #3
    Membre �prouv� Avatar de ken_le_videur
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    129
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 129
    Par d�faut
    Pr�cision :
    Tu lance le screensaver avec la commande /p 123456789, ce chiffre �tant en fait le handle de la fen�tre ( hWnd) ou tu veux que le screen s'affiche.

    Val�

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut
    je n'ai pas tres bien compris tout ce que tu a dis. Fau dire que je suis debutant en c++.
    je ne sais meme pas si jai un handler car cest une fenetre dans un dialog.
    si tu aurais un bout de code que tu pourai me montrer je serais bien content et ca m'aiderais beaucoup plus.

    a l'avance

  5. #5
    Membre �prouv� Avatar de ken_le_videur
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    129
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 129
    Par d�faut
    Fais nous voir comment tu cr�e ta fen�tre, que je voie si tu prut recup�rer ton handle de fen�tre.
    Apr�s �a donne �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
       char buffer[200];
       sprintf((char*)buffer,"c:\\WINDOWS\\system32\\sspipes.scr /p %i",(int)hWnd);
    system(buffer);

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut
    En fait j�en suis encore la. Je croyais que l'un de mes colegue aurait put m'aider la dessu mais ce n'est pas le cas.
    Je ne sais pas vraiment comment faire la fen�tre mais j'ai vue cette classe : CAnimateCtrl. Croix-tu que cela peu faire la m�me chose ? Si non peu tu me montrer un peu comment faire une fen�tre avec le handler ou me rediriger vers un site qui me le monterait. Moi depuis mon d�but dans le C++, qui n�est pas tr�s loin (1 mois), je n�utilise que des dialog donc je suis un peu perdue.

    � l�avance

  7. #7
    mat.M
    Invit�(e)
    Par d�faut
    En fait j�en suis encore la. Je croyais que l'un de mes colegue aurait put m'aider la dessu mais ce n'est pas le cas.
    Je ne sais pas vraiment comment faire la fen�tre mais j'ai vue cette classe : CAnimateCtrl. Croix-tu que cela peu faire la m�me chose ? Si non peu tu me montrer un peu comment faire une fen�tre avec le handler ou me rediriger vers un site qui me le monterait. Moi depuis mon d�but dans le C++, qui n�est pas tr�s loin (1 mois), je n�utilise que des dialog donc je suis un peu perdue.

    trouver un bon livre sur la programmation Windows et MFC d'abord.
    A Ottawa on en trouve des tas en anglais dont Programming the MFC.
    Au Qu�bec je ne sais pas mais mieux vaut aller � Ottawa...
    Si tu utilises des CDialog , pour obtenir un DC , voil� comment proc�der:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    HDC hdc=CMyDlg::GetDC();
    ::SetPixel(hdc,10,10,RGB(255,0,0));
    CMyDlg::ReleaseDC();

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut
    Citation Envoy� par mat.M
    trouver un bon livre sur la programmation Windows et MFC d'abord.
    A Ottawa on en trouve des tas en anglais dont Programming the MFC.
    Au Qu�bec je ne sais pas mais mieux vaut aller � Ottawa...
    Si tu utilises des CDialog , pour obtenir un DC , voil� comment proc�der:
    Merci je vais aissayer de me procurer ce livre si tu en a dautre a proposer sur le C++, MFC, et programation window tu peu me les envoyer par e-mail svp

    maintenent j'ai 2 erreur
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    ->  HDC hdc = CPartiegestionDlg::GetDC();
        ::SetPixel(hdc,10,10,RGB(255,0,0));
    ->> CPartiegestionDlg::ReleaseDC();
    -> error C2440: 'initializing' : cannot convert from 'class CDC *' to 'struct HDC__ *'
    ->> error C2660: 'ReleaseDC' : function does not take 0 parameters

    je ne sais pas si cest le code que tu ma envoyer ou bien moi qui cause ces erreur mais pouvez vouis me dire commen les regler svp

    a l'avance

  9. #9
    Membre �prouv� Avatar de ken_le_videur
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    129
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 129
    Par d�faut
    Hop hop hop;
    mon premier post �tait erron�. Il s'agit bien d'un handle de fen�tre qu'il faut.
    Je te filerai un peu de code ce soir pour te montrer. Tu as quelle version de VC++ ?

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut
    Citation Envoy� par ken_le_videur
    Hop hop hop;
    mon premier post �tait erron�. Il s'agit bien d'un handle de fen�tre qu'il faut.
    Je te filerai un peu de code ce soir pour te montrer. Tu as quelle version de VC++ ?
    ma version de VC++ est 6.0

    merci a tout de repondre a mes questions

  11. #11
    Membre �prouv� Avatar de ken_le_videur
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    129
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 129
    Par d�faut
    Dommage j'ai la v7, je te l'envoie par mail, tu verra ce que tu peut faire avec.
    En gros, tu cr�e un projet avec une CDialog. Dans le OnInitDialog de cette dialog, tu ajoute �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    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
     m_preview.Create(IDD_PREVIEW);
      	m_preview.ShowWindow(SW_SHOW);
    	m_preview.SetParent(this);
      m_preview.SetWindowPos(0,50,50,200,200,0);
     
         char buffer[200];
         sprintf((char*)buffer,"D:\\WINDOWS\\system32\\sspipes.scr /p %i",(int)m_preview.m_hWnd);
         //sprintf((char*)buffer,"/p %i",(int)m_preview.m_hWnd);
    //   ShellExecute(hWnd, "open",  "D:\\WINDOWS\\system32\\screenpreview.scr", (LPSTR)buffer, NULL, SW_SHOWNORMAL);*/
     
        STARTUPINFO si;
        PROCESS_INFORMATION pi;
     
        ZeroMemory( &si, sizeof(si) );
        si.cb = sizeof(si);
        ZeroMemory( &pi, sizeof(pi) );
     
        // Start the child process. 
        if( !CreateProcess( NULL, // No module name (use command line). 
            buffer, // Command line. 
            NULL,             // Process handle not inheritable. 
            NULL,             // Thread handle not inheritable. 
            FALSE,            // Set handle inheritance to FALSE. 
            0,                // No creation flags. 
            NULL,             // Use parent's environment block. 
            NULL,             // Use parent's starting directory. 
            &si,              // Pointer to STARTUPINFO structure.
            &pi )             // Pointer to PROCESS_INFORMATION structure.
        )
    Et ca dans le point h:

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Ao�t 2003
    Messages
    33
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 33
    Par d�faut
    Merci bien pour ce bou de code code mais j�ai un probl�me avec. Le dialog n�appara�t pas.

    Il me reste quelque probl�me. Je voudrais que le preview apparaisse dans la fen�tre, ou quoi que ce soit d'autre, d'un dialog d�j� existant lorsque je choisi un screensaver dans un list control; un peu comme le fait Windows

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    R�ponses: 8
    Dernier message: 08/06/2005, 15h57
  2. R�ponses: 3
    Dernier message: 31/01/2005, 15h22
  3. [MFC](encapsulation ADO) ou placer le code
    Par philippe V dans le forum MFC
    R�ponses: 2
    Dernier message: 13/06/2002, 14h58
  4. R�ponses: 2
    Dernier message: 10/06/2002, 11h03
  5. [MFC] ADO connection
    Par philippe V dans le forum MFC
    R�ponses: 3
    Dernier message: 10/06/2002, 07h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo