Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1422 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Superposition et Layering pour une application MFC

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Superposition et Layering pour une application MFC

n°690193
PETOZAK
Posté le 01-04-2004 à 21:44:08  profilanswer
 

Salut,
Voila je dois coder une application qui analyse une video et dessine des carres  
dans les 4 coins de la video.Or, je pourrais affecter directement la video pour afficher mes carres mais ce serait franchement nul.
Ma question est simple comment afficher "des choses" au dessus de la video qui tourne avec des MFC.
Un peu comme dans les players video style bsplayer qui affiche une barre pour le volume au dessus de la video en vert?
Merci
PS:l'affichage doit etre relatif bien sur: si je bouge mon appli les carres doivent suivre.

mood
Publicité
Posté le 01-04-2004 à 21:44:08  profilanswer
 

n°692495
pedro-2480
Posté le 05-04-2004 à 11:40:19  profilanswer
 

Récupère un pointeur sur la fenêtre qui affiche la vidéo et ensuite le DC associé à cette fenêtre, une fois le DC connu, ca devient simple de mettre ce que tu veux dedans (textes, carrés...)
 
Pour récupérer un pointeur sur la fenêtre il y a plusieurs méthodes:
 
Récupérer un CWnd * au moment ou tu crées le contrôle qui affiche la vidéo dans ton application, sinon, le récupérer plus tard à l'aide de fonctions du style GetCtrlById() (moins fiable)
 
Une fois le pointeur obtenu, tu peux le caster et récupérer facilement un DC valide pour te servir des fonctions classiques de dessin... (GetDC() par exemple)
 
Si l'affichage de la vidéo est effectué par une autre application que la tienne alors je ferais comme ca:
 
Je récupèrerais un pointeur sur la fenêtre qui affiche la vidéo et ensuite le DC associé à cette fenêtre, une fois le DC connu, ca devient simple de mettre ce que tu veux dedans (textes, carrés...)
 
Pour récupérer un pointeur sur la fenêtre il y a plusieurs méthodes:
 
- Récupérer le pointeur grace à la position de la fenetre (pas toujours pratique): WindowFrompoint(CPoint &pt) si je me souviens bien...,
 
- Récupérer un pointeur sur le thread qui gère la fenêtre grâce au nom de l'application / de la fenêtre principale, ensuite depuis ce pointeur récupérer un pointeur sur la fenêtre...
 
-> pour faire cela il y a plusieurs possibilités (dont une qui permet de récupérer le pointeur grace au nom de l'application mais je ne me rappelle plus de la méthode, elle doit faire partie du platform SDK cependant), sinon tu peux toujours utiliser des fonctions d'énumérations de process et filtrer selon le nom des process... (comme ca vite fait: Process32First(), Process32Next()...) ensuite tu appelles une méthode genre GetMainWnd() de ton thread et c'est gagné...
 
Une fois le pointeur sur la fenêtre obtenue, des fonctions du style de getDC() te permettront d'obtenir un contexte valide et de dessiner facilement ce que tu veux dedans...
 
Ce ne sont juste que des idées, je ne me rappelle plus exactement le nom de méthodes et des classes dont dépendent ces méthodes, mais cette technique marche à coups sur (il y a des dizaines de facons et de classes / méthodes pour faire la même chose...)


---------------
- Pierre Baudelet -
n°693819
PETOZAK
Posté le 06-04-2004 à 16:03:40  profilanswer
 

Merci Beaucoup, je vais essayer


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Superposition et Layering pour une application MFC

 

Sujets relatifs
communication entre les plugins et le coeur d'une application POOOuvrir une application à l'interieur de la fenetre de mon navigateur
Ouvrir une application à l'interieur de la fenetre de mon navigateurComment savoir si une application Java est déjà lancée
Application client/serveur[c++ | DirectX ] MFC pour interface d'un jeu 3d ?
Sécurisation entre Server SQL 2000 et une application .NET (ssl?)[MFC] Configuration Fullscreen
Pour creer un .exe a partir d une application sous AccessUne Application de video conference
Plus de sujets relatifs à : Superposition et Layering pour une application MFC


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR