Accueil > Forum > > > > Texte selectionné sur une autre fenêtre
Texte selectionné sur une autre fenêtre
jeudi 12 mai 2005 à 20:15:51 |
Texte selectionné sur une autre fenêtre

sebseb42
|
Bonjour a tous,
Je voudrais savoir s'il est possible de recuperer du texte selectionner dans une autre fenetre, par exemple j'ouvre le notepad, je tappe bonjour et je selectionne "jour", je voudrais pouvoir recuperer ce texte dans mon application.
C'est un peu primaire comme question mais bon, si vous avez une methode, meme si il faut passer part du code natif en C, n'hesitez, ca me fait meme pas peur d'ailleur c'est sur cette base que je suis partit, mais j'ai encore quelques soucis.
Je vais poser la meme question sur le sites de code-sources C/C++
Merci pour votre aide, a++
|
|
jeudi 12 mai 2005 à 20:17:22 |
Re : Texte selectionné sur une autre fenêtre

sebseb42
|
désolé pour la phrase qui parle du code natif en C, c'est tres con de dire ca ici, c'est parcequ'a la base c'est une question que j'ai poser sur csharpfr, et j'ai oublier de modifier, desoler 
|
|
jeudi 12 mai 2005 à 20:43:50 |
Re : Texte selectionné sur une autre fenêtre

vecchio56
|
Il faut d'abord que tu retrouve la fenêtre en question, par exemple
avec FinWindow("Notepad", 0) dans ton exemple, puis récupérer l'edit
correspondant avec EnumChildWindows. Tu obtiens donc l'handle d'un
edit, tu peux alors récupérer la sélection en envoyant à l'edit le
message EM_GETSELTEXT
|
|
jeudi 12 mai 2005 à 22:49:26 |
Re : Texte selectionné sur une autre fenêtre

sebseb42
|
ahh, voila le truc que je cherchais, EM_GETSELTEXT, j'etais pas vraiment sure mais mnt je vais essayer ca...
cependant, j'enumere deja toutes les fenetres, et ensuite j'enumere les childwindow (les sous objets) mais comment savoir le childwindow (parmis tout ceux enumeré) en question est un edit ? et aussi il y a plusieurs sorte de edit non ? et puis par exemple du texte sur une page html n'est pas du texte contenu dans un edit, si ?
voila, le debut etais bien, mais me faut plus de details, merci :)
|
|
jeudi 12 mai 2005 à 23:04:52 |
Re : Texte selectionné sur une autre fenêtre

sebseb42
|
selon MSDN :
"The EM_GETSELTEXT message retrieves the currently selected text in a rich edit control"
et j'ai tester, ca trouve quedal sur le notepad. j'ai tester en mode bourrin, j'ai fait ceci dans la EnumChildProc :
------------------------------------------------------------- char *seltext;
seltext = (char*)SendMessage(hwnd, EM_GETSELTEXT, 0, 0); if (seltext != NULL) printf("seltext : %s\n", seltext); -------------------------------------------------------------
et ca n'affiche rien, mais par contre ca fait planter certaines des applications auquels j'ai demander de recup le texte selectionné sur ces window enfants (Visual Studio plante directe)
y aurait pas un WM_GETSELTEXT ou un truc du genre ?
|
|
jeudi 12 mai 2005 à 23:20:52 |
Re : Texte selectionné sur une autre fenêtre

sebseb42
|
bon ecoutez pas le petit monsieur la, il est fatigué 
nan en fait j'ai re-ecrit les appel a SendMessage, il sont desormet correct, mais ca fonctionne toujours pas :S
-------------------------------------------- char seltext[4096];
memset(seltext, 0, sizeof(seltext)); SendMessage(hwnd, EM_GETSELTEXT, 0, seltext); printf("+ seltext : %s\n", seltext); --------------------------------------------
voila, mais ca fonctionne toujours pas, mon buffer est toujours vide, meme si je selectionne du texte dans notepad ou dans un explorer
|
|
jeudi 12 mai 2005 à 23:21:26 |
Re : Texte selectionné sur une autre fenêtre

vecchio56
|
Tu n'a pas bien la MSDN: quand tu envoies EM_GETSETTEXT, tu dois
fournir un buffer dans lParam, la valeur de retour de SendMessage est
seulement le nombre de caractères copiés, tu ne t'en sers pas forcément:
char setText[TAILLE_MAX];
SendMessage(hwnd, EM_GETSELTEXT, 0, (LPARAM)selText);
Pour ce qui est de savoir si une fenêtre est un edit, tu regarde son nom de classe avec GetClassName:
char className[32];
GetClassName(hwnd, className, 32);
if(!lstrcmpi(className, "EDIT"))
{
// C'est un edit
}
La méthode que je donne ne marche que pour les EDIT. Pour une page HTML
par exemple, je pense que c'est tout simplement impossible. Comment
pourrait-on connaitre le texte séléctionné dans une fenêtre dont on
ignore tout, et la manière dont elle a été créée. EM_GETSELTEXT ne
marchera comme son nom l'indique que pour des EDIT (ou les RichEdit),
et pour le reste tu va avoir de grosses difficultés.
|
|
jeudi 12 mai 2005 à 23:22:20 |
Re : Texte selectionné sur une autre fenêtre

vecchio56
|
Désolé j'avais pas eu le temps de voir ton dernier message
|
|
jeudi 12 mai 2005 à 23:30:48 |
Re : Texte selectionné sur une autre fenêtre

sebseb42
|
pas grave... mais de toute facon des personnes l'ont deja fait, c'est donc que c'est faisable...
|
|
jeudi 12 mai 2005 à 23:35:53 |
Re : Texte selectionné sur une autre fenêtre

vecchio56
|
Mais comment veux tu par exemple connaitre le texte séléctionné par un
personne dans une fenêtre de Mozilla. Même si tu sais comment faire, il
faut que tu prévoie une solution pour chaque application (beaucoup
d'application utilisent des types de fenêtres qu'elles définissent
elles même et qui ne sont pas documentées)
|
|
Cette discussion est classée dans : texte, recuperer, selectionné, question, fenêtre
Répondre à ce message
Sujets en rapport avec ce message
Comment afficher du texte dans un fenêtre OpenGl?? [ par mastave ]
Comment afficher du texte dans un fenêtre OpenGl??Et avec un police spéciale??
Type de fenêtre + Gestion des touches + Réduction de la fenêtre [ par CyberP ]
1.Lorsque l'on créé un élément pour son programme, comme une barre de status ou une zone de texte éditable, on utilise une fonction avec le type d'élé
recuperation de donnees d un fichier texte. [ par coyotedef ]
j'aimerai recuperer des donnees presente dans fichier texte et les classer dans un tableau. ces donnees sont toutes du meme format mais se trouve au m
Recuperer le texte d'une combobox [ par tweet ]
Salut, Je gere un petit prog sous visual C++ et je n'arrive pas à récupérer le texte d'un combobox. J'ai associe au combo une variable de type CString
recuperer texte d'une ListView [ par glipper ]
Lol bonjour, (et vi encore moi, désolé :)Maintenant, j'essaie de récuperer le nom de l'item selectionné dans ma ListView. J'ai récuperé le numero de l
texte - TreeView [ par glipper ]
Bonjour,J'ai créé une TreeView, dans laquelle j'y ai inséré des items... et j'essaie de recuperer l'andle de l'item selectionné. J'ai utilisé ceci : H
Texte trop long dans une fenêtre SDI. Que faire ? [ par marcel6566 ]
J'écris des phrases les une après les autres sur la fenêtre SDI. Certaines de ces phrases ne tiennent pas sur une ligne, car j'utilise une grande tail
Comment récupérer du texte dans une fenêtre? [ par tictactouc ]
Bonjour, depuis un mois je cherche partout comment récupérer n'importe quel texte écrit par TextOut ou par DrawText dans une fenêtre,Ceci dans le but
Récupérer les infos des contrôles [ par Tibabou ]
Bonjour/soir,Je ne sais récupérer aucune caractéristique des contrôles que je place sur ma fenêtre. Par exemple, un simple bouton ou un champs de sais
Formatage dans le RichEdit [ par Kikx ]
Ma question c'est est ce que il y a une methode simple pour formatter le texte d'une editbox ?genre un peu comme des balises HTMLL'idée est la suivant
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|