begin process at 2012 05 28 05:38:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Affichage image dans zone client + Thread


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Affichage image dans zone client + Thread

jeudi 22 mai 2003 à 12:16:22 | Affichage image dans zone client + Thread

PoluxProg

Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:

CBitmap *pImage=new CBitmap;
pImage->LoadBitmap(IDB_IMAGE);
CDC *pMem;
pMem = new CDC;
pMem->CreateCompatibleDC(pDC);
pMem->SelectObject(pImage); // <- Erreur d'exécution.
pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
delete pMem;

Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...

Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
jeudi 22 mai 2003 à 12:20:31 | Re : Affichage image dans zone client + Thread

BruNews

Administrateur CodeS-SourceS
Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
>
> CBitmap *pImage=new CBitmap;
> pImage->LoadBitmap(IDB_IMAGE);
> CDC *pMem;
> pMem = new CDC;
> pMem->CreateCompatibleDC(pDC);
> pMem->SelectObject(pImage); // <- Erreur d'exécution.
> pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> delete pMem;
>
> Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
>
> Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
>
jeudi 22 mai 2003 à 21:24:21 | Re : Affichage image dans zone client + Thread

PoluxProg

Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...




-------------------------------
Réponse au message :
-------------------------------

> Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> BruNews, ciao...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> >
> > CBitmap *pImage=new CBitmap;
> > pImage->LoadBitmap(IDB_IMAGE);
> > CDC *pMem;
> > pMem = new CDC;
> > pMem->CreateCompatibleDC(pDC);
> > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > delete pMem;
> >
> > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> >
> > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> >
>
jeudi 22 mai 2003 à 21:46:11 | Re : Affichage image dans zone client + Thread

BruNews

Administrateur CodeS-SourceS
C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
>
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > >
> > > CBitmap *pImage=new CBitmap;
> > > pImage->LoadBitmap(IDB_IMAGE);
> > > CDC *pMem;
> > > pMem = new CDC;
> > > pMem->CreateCompatibleDC(pDC);
> > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > delete pMem;
> > >
> > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > >
> > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > >
> >
>
jeudi 22 mai 2003 à 21:54:04 | Re : Affichage image dans zone client + Thread

PoluxProg

Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...



-------------------------------
Réponse au message :
-------------------------------

> C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> BruNews, ciao...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> >
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > BruNews, ciao...
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > >
> > > > CBitmap *pImage=new CBitmap;
> > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > CDC *pMem;
> > > > pMem = new CDC;
> > > > pMem->CreateCompatibleDC(pDC);
> > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > delete pMem;
> > > >
> > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > >
> > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > >
> > >
> >
>
jeudi 22 mai 2003 à 22:09:57 | Re : Affichage image dans zone client + Thread

BruNews

Administrateur CodeS-SourceS
SetTimer() a au moins 2 methodes differentes d'appel.
Soit tu generes comme tu l'as mis un WM_TIMER sur ta WndProc, soit tu lui passes l'adresse d'une fonction callback avec laquelle tu fais ce que tu veux. La 2 eme methode a un gros avantage car elle sera toujours appelee quel que soit le contexte.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> > >
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > > BruNews, ciao...
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > > >
> > > > > CBitmap *pImage=new CBitmap;
> > > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > > CDC *pMem;
> > > > > pMem = new CDC;
> > > > > pMem->CreateCompatibleDC(pDC);
> > > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > > delete pMem;
> > > > >
> > > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > > >
> > > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > > >
> > > >
> > >
> >
>
vendredi 23 mai 2003 à 09:04:01 | Re : Affichage image dans zone client + Thread

PoluxProg

Merci beaucoup pour ton aide, il faut que je comprenne comment la fonction SetTimer en passant l'adresse
d'une fonction "callback" (?)...
Au fait, quelqu'un peut me dire s'il existe une version de MSDN en français ?


-------------------------------
Réponse au message :
-------------------------------

> SetTimer() a au moins 2 methodes differentes d'appel.
> Soit tu generes comme tu l'as mis un WM_TIMER sur ta WndProc, soit tu lui passes l'adresse d'une fonction callback avec laquelle tu fais ce que tu veux. La 2 eme methode a un gros avantage car elle sera toujours appelee quel que soit le contexte.
> BruNews, ciao...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> > > BruNews, ciao...
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > > > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> > > >
> > > >
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > > > BruNews, ciao...
> > > > >
> > > > >
> > > > > -------------------------------
> > > > > Réponse au message :
> > > > > -------------------------------
> > > > >
> > > > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > > > >
> > > > > > CBitmap *pImage=new CBitmap;
> > > > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > > > CDC *pMem;
> > > > > > pMem = new CDC;
> > > > > > pMem->CreateCompatibleDC(pDC);
> > > > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > > > delete pMem;
> > > > > >
> > > > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > > > >
> > > > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > > > >
> > > > >
> > > >
> > >
> >
>
vendredi 23 mai 2003 à 09:11:46 | Re : Affichage image dans zone client + Thread

BruNews

Administrateur CodeS-SourceS
et non, pas de MSDN french.
Pour la version SetTimer() avec callback, va voir ma source ABOUTBOX SINUSOIDE, y a un exemple. C'est pas mfc car je n'en fais jamais mais tu auras idee de la methode.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Merci beaucoup pour ton aide, il faut que je comprenne comment la fonction SetTimer en passant l'adresse
> d'une fonction "callback" (?)...
> Au fait, quelqu'un peut me dire s'il existe une version de MSDN en français ?
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > SetTimer() a au moins 2 methodes differentes d'appel.
> > Soit tu generes comme tu l'as mis un WM_TIMER sur ta WndProc, soit tu lui passes l'adresse d'une fonction callback avec laquelle tu fais ce que tu veux. La 2 eme methode a un gros avantage car elle sera toujours appelee quel que soit le contexte.
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> > > > BruNews, ciao...
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > > > > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > -------------------------------
> > > > > Réponse au message :
> > > > > -------------------------------
> > > > >
> > > > > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > > > > BruNews, ciao...
> > > > > >
> > > > > >
> > > > > > -------------------------------
> > > > > > Réponse au message :
> > > > > > -------------------------------
> > > > > >
> > > > > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > > > > >
> > > > > > > CBitmap *pImage=new CBitmap;
> > > > > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > > > > CDC *pMem;
> > > > > > > pMem = new CDC;
> > > > > > > pMem->CreateCompatibleDC(pDC);
> > > > > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > > > > delete pMem;
> > > > > > >
> > > > > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > > > > >
> > > > > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
lundi 26 mai 2003 à 10:52:13 | Re : Affichage image dans zone client + Thread

PoluxProg

J'ai essayer d'utiliser la fct SetTimer()...
Le truc que je ne comprends pas, c'est que dans ton exemple ABOUTBOX SINUSOIDE lorsque tu utilise SetTimer(), tu lui mets 4 paramètres. Or, quand je le met dans mon code à la CView, le compilateur me dis que SetTimer ne peut accepter que 3 paramètres... (???)
CView::OnDraw(CDC *pDC)
{ ...
SetTimer(0, 100, TestTimerProc); <- 3 param et pas +
...
}

Autre chose, dans ma fct CALLBACK qui sera appelée toute les 100 milisecondes, je voudrais pouvoir lui mettre un paramètre :
void CALLBACK TestTimerProc(HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime)
{
Je vous voudrais avoir le pointeur sur le pDC de la fct OnDraw(), afin d'afficher mes images toutes les 100 ms...
}

A moins qu'il existe une fct qui permette de récupérer ce pointeur sur la zone client...

-------------------------------
Réponse au message :
-------------------------------

> et non, pas de MSDN french.
> Pour la version SetTimer() avec callback, va voir ma source ABOUTBOX SINUSOIDE, y a un exemple. C'est pas mfc car je n'en fais jamais mais tu auras idee de la methode.
> BruNews, ciao...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Merci beaucoup pour ton aide, il faut que je comprenne comment la fonction SetTimer en passant l'adresse
> > d'une fonction "callback" (?)...
> > Au fait, quelqu'un peut me dire s'il existe une version de MSDN en français ?
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > SetTimer() a au moins 2 methodes differentes d'appel.
> > > Soit tu generes comme tu l'as mis un WM_TIMER sur ta WndProc, soit tu lui passes l'adresse d'une fonction callback avec laquelle tu fais ce que tu veux. La 2 eme methode a un gros avantage car elle sera toujours appelee quel que soit le contexte.
> > > BruNews, ciao...
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...
> > > >
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> > > > > BruNews, ciao...
> > > > >
> > > > >
> > > > > -------------------------------
> > > > > Réponse au message :
> > > > > -------------------------------
> > > > >
> > > > > > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > > > > > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > -------------------------------
> > > > > > Réponse au message :
> > > > > > -------------------------------
> > > > > >
> > > > > > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > > > > > BruNews, ciao...
> > > > > > >
> > > > > > >
> > > > > > > -------------------------------
> > > > > > > Réponse au message :
> > > > > > > -------------------------------
> > > > > > >
> > > > > > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > > > > > >
> > > > > > > > CBitmap *pImage=new CBitmap;
> > > > > > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > > > > > CDC *pMem;
> > > > > > > > pMem = new CDC;
> > > > > > > > pMem->CreateCompatibleDC(pDC);
> > > > > > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > > > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > > > > > delete pMem;
> > > > > > > >
> > > > > > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > > > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > > > > > >
> > > > > > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
lundi 26 mai 2003 à 11:31:19 | Re : Affichage image dans zone client + Thread

BruNews

Administrateur CodeS-SourceS
Ton code est MFC et le mien direct API.
Faut interpreter dans le charabia mfc.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> J'ai essayer d'utiliser la fct SetTimer()...
> Le truc que je ne comprends pas, c'est que dans ton exemple ABOUTBOX SINUSOIDE lorsque tu utilise SetTimer(), tu lui mets 4 paramètres. Or, quand je le met dans mon code à la CView, le compilateur me dis que SetTimer ne peut accepter que 3 paramètres... (???)
> CView::OnDraw(CDC *pDC)
> { ...
> SetTimer(0, 100, TestTimerProc); <- 3 param et pas +
> ...
> }
>
> Autre chose, dans ma fct CALLBACK qui sera appelée toute les 100 milisecondes, je voudrais pouvoir lui mettre un paramètre :
> void CALLBACK TestTimerProc(HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime)
> {
> Je vous voudrais avoir le pointeur sur le pDC de la fct OnDraw(), afin d'afficher mes images toutes les 100 ms...
> }
>
> A moins qu'il existe une fct qui permette de récupérer ce pointeur sur la zone client...
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > et non, pas de MSDN french.
> > Pour la version SetTimer() avec callback, va voir ma source ABOUTBOX SINUSOIDE, y a un exemple. C'est pas mfc car je n'en fais jamais mais tu auras idee de la methode.
> > BruNews, ciao...
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Merci beaucoup pour ton aide, il faut que je comprenne comment la fonction SetTimer en passant l'adresse
> > > d'une fonction "callback" (?)...
> > > Au fait, quelqu'un peut me dire s'il existe une version de MSDN en français ?
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > SetTimer() a au moins 2 methodes differentes d'appel.
> > > > Soit tu generes comme tu l'as mis un WM_TIMER sur ta WndProc, soit tu lui passes l'adresse d'une fonction callback avec laquelle tu fais ce que tu veux. La 2 eme methode a un gros avantage car elle sera toujours appelee quel que soit le contexte.
> > > > BruNews, ciao...
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > Ah bon, je pensais que le thread était plus pratique à utiliser, mais c'est quoi le code pour démarrer une fonction avec un timer ? (J'utilisais déjà un timer pour mettre à jour l'affichage en cas de remension, mais c'était tout simple : SetTimer(1, 300, NULL))...
> > > > >
> > > > >
> > > > >
> > > > > -------------------------------
> > > > > Réponse au message :
> > > > > -------------------------------
> > > > >
> > > > > > C'etait pour t'eviter le thread. Un timer s'execute ou se met en pause aussi.
> > > > > > BruNews, ciao...
> > > > > >
> > > > > >
> > > > > > -------------------------------
> > > > > > Réponse au message :
> > > > > > -------------------------------
> > > > > >
> > > > > > > Merci pour ton message mais je ne comprends pas pourquoi le mettre dans un timer ?
> > > > > > > L'animation reprèsente un décompteur graphique comme un sablier qui peut être stopper (suspendu momentanément) par événement, puis par un autre événement, il continue ("resume") de décompter...
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > -------------------------------
> > > > > > > Réponse au message :
> > > > > > > -------------------------------
> > > > > > >
> > > > > > > > Tu ne peux pas le mettre dans un timer ? avec un bool si affiche ou non.
> > > > > > > > BruNews, ciao...
> > > > > > > >
> > > > > > > >
> > > > > > > > -------------------------------
> > > > > > > > Réponse au message :
> > > > > > > > -------------------------------
> > > > > > > >
> > > > > > > > > Pour afficher une image dans la zone client, j'utilise ce code qui marche plutôt bien:
> > > > > > > > >
> > > > > > > > > CBitmap *pImage=new CBitmap;
> > > > > > > > > pImage->LoadBitmap(IDB_IMAGE);
> > > > > > > > > CDC *pMem;
> > > > > > > > > pMem = new CDC;
> > > > > > > > > pMem->CreateCompatibleDC(pDC);
> > > > > > > > > pMem->SelectObject(pImage); // <- Erreur d'exécution.
> > > > > > > > > pDC->StretchBlt(0,0,L,l,pMem,0,0,720,576,SRCCOPY);
> > > > > > > > > delete pMem;
> > > > > > > > >
> > > > > > > > > Mais, le problème est que ce code me créé une erreur d'exécution lorsque je le met dans un thread...
> > > > > > > > > Je voudrais, en fait, faire une animation dans la zone client à partir de 50 images superposées qui seront affichées simultanément toutes les 200 millisecondes, tout en pouvant faire une pause à n'importe quel moment...
> > > > > > > > >
> > > > > > > > > Si quelqu'un a une idée pratique sur ce problème ou autre solution, j'accepte toute propositon...
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>


Cette discussion est classée dans : image, client, thread, zone, pmem


Répondre à ce message

Sujets en rapport avec ce message

fenetre et zone dessinable [ par pounch ] Bonjour à tous,actuellement je travail sur un logiciel de skin de windows, mais pour l'instant j'ai un bug assez chiant.En effet lorsque je skin ma fe multi thread avec librairie phtread -> help please [ par davwart ] Hello all.j'essaie de faire un chat en mode console en utilisant la librairie pthread.h.mon serveur a une fonction main qui lance un thread d'ecoute e SELECTION D'UNE ZONE DE FORME QUELCONQUE D'UNE IMAGE AVEC LA SOURIS [ par tiger3550 ] Bonjour,Dans le cadre d'un projet d'école, je dois réaliser un logiciel de traitement d'images médicales. Toute aide serait la bienvenue.Mon problème Visual C++ Affichage dans la zone client [ par Winhotto ] Bonjour,je cherche un support qui me permette de faire la mise en page de la zone client.Par exemple un support quadrillé sur lequel je peux mettre mo Zone Client = Ecran [ par Homere ] Bonjour,J'aimerais savoir comment on fait pour avec tout l'écran comme zone client. Je me sert de setpixel() pour dessiner un pixel, mais je suis touj acceder à une zone de texte à partir d'un thread [ par seito ] bonjours je suis un nouveau dans VC et les MFC;j'essai d'acceder à un zone de texte d'une boite de dialogue à partir d'un thread; le problme c'est que activer une fenetre dans une appli MDI [ par arno2004 ] Bonjourj'ai récupérer un éditeur de dessin. j'y est ajouter une fonction'ci dessous) pour copier une zone sélectionnée dans une nouvelle fenêtre. la f image qui ne s'affiche pas dans une zone image [ par pidoumtimo ] hello.J'ai un pb d'affichage de bitmap dans une dialogue box.La situation est la suivante.Une premiere dialogue box est lancée. Par un clik sur un bou Socket [ par c2millet ] Bonjour à tous,je voudrais dans un premier tps si qqun a ou connais une doc sur les sockets. Ensuite, g un petit pb. g réalisé un serveur qui lit sur Comment selectionner une zone rectangulaire d'une image avec la souris??? [ par Khymerion ] Dans le cadre d'un projet informatique, nous développons un logiciel qui permet de passer d'une image a une autre par simple clic de l'utilisateur sur


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,373 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales