[R] Découper une fenêtre

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

[R] Découper une fenêtre

#1

Message par periaz »

Bonjour,
Je voudrais savoir si il serait possible de découper une partie d'une fenêtre et la recoller dans une autre avec autoit.

Voici un exemple :

Image

Merci
Modifié en dernier par periaz le mer. 18 nov. 2009 15:02, modifié 1 fois.
Avatar du membre
Narmeke
Niveau 6
Niveau 6
Messages : 247
Enregistré le : mer. 28 oct. 2009 11:31
Localisation : Libourne
Status : Hors ligne

Re: [..] Découper une fenêtre

#2

Message par Narmeke »

A quoi cela pourrait te servir?

D'après moi, je ne crois pas que cela soit possible. Je peux même te le certifié cela n'est pas possible. Après je ne connais pas tout loin de là :lol:
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Découper une fenêtre

#3

Message par Iste »

A quoi ca peut servir ? aucune idée mais ya surement des tas d'applications imaginable.
Apres, je pense qu'il faut agir directement avec la carte graphique, et meme si c'est peut etre possible en au3, vaut mieux utiliser un autre langage genre C
Autoit ne permet pas non plus de marcher sur l'eau ;)
Signez ici
Avatar du membre
Narmeke
Niveau 6
Niveau 6
Messages : 247
Enregistré le : mer. 28 oct. 2009 11:31
Localisation : Libourne
Status : Hors ligne

Re: [..] Découper une fenêtre

#4

Message par Narmeke »

Non, le C n'est pas un bon language pour cela. Je te conseille de chercher sur Internet (google) tu trouveras ton bonheur.

Je te conseille aussi un site web parmi d'autres :
► Afficher le texte


Il est utile pour les zéros qui veulent apprendre à programmer.
Regarde du coté de Java ou C+ ou autre. Mais une chose de sûr, le C tu ne peux pas faire cela. :o

Bonne continuation !
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Découper une fenêtre

#5

Message par Iste »

Bon, vu que pour le coté autoit ca semble mort, je me permet un petit hors sujet,

Narmeke, pourais-tu etre plus précis sur les raisons qui te font dire qu'en C ce n'est pas possible ?
Je connais plusieurs librairies qui pourrais tout a fait le faire selon moi, bien que je ne puisse pas donner plus de détaille a cause de mes faible connaissances...

De plus, en langages possible tu cite le C++ (qui rappelons le, n'est qu'une autre facon de voir le C) et le java (java ???)

Enfaite, si j'avais dis C, c'etait pour pas dire assembleur ^^'

PS : merci d'apporter des arguments lorsque vous contredisez une réponse. C'est tres lourd de lire les autre dire que c'est faux, sans savoir pourquoi.
Signez ici
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#6

Message par periaz »

Bonjour,
En fait je voudrais prendre un petit morceaux d'image d'une page Firefox, et le reporter en haut de mon écran (comme un ToolTip).

Sinon, à propos du C, ça m'embête de réapprendre un langage.
J'aime beaucoup AutoIt ...

Merci
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Découper une fenêtre

#7

Message par Tlem »

Je ne comprend pas vraiment l'intérêt de ceci, mais une idée qui peut être envisagée, serait d'afficher l'information dans une fenêtre masquée, puis de capturer ce qu'il y à dedans puis découper ce dont on à besoin et enfin afficher ce dont on à besoin dans une GUI spécifique.

Pour capturer une fenêtre, vous pouvez utiliser ceci :
► Afficher le texte
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#8

Message par periaz »

Bonsoir Tlem,
Merci de votre réponse.
Je vais m'y penché un peu.
Avatar du membre
Narmeke
Niveau 6
Niveau 6
Messages : 247
Enregistré le : mer. 28 oct. 2009 11:31
Localisation : Libourne
Status : Hors ligne

Re: [..] Découper une fenêtre

#9

Message par Narmeke »

Iste a écrit :Bon, vu que pour le coté autoit ca semble mort, je me permet un petit hors sujet,

Narmeke, pourais-tu etre plus précis sur les raisons qui te font dire qu'en C ce n'est pas possible ?
Je connais plusieurs librairies qui pourrais tout a fait le faire selon moi, bien que je ne puisse pas donner plus de détaille a cause de mes faible connaissances...

De plus, en langages possible tu cite le C++ (qui rappelons le, n'est qu'une autre facon de voir le C) et le java (java ???)

Enfaite, si j'avais dis C, c'etait pour pas dire assembleur ^^'

PS : merci d'apporter des arguments lorsque vous contredisez une réponse. C'est tres lourd de lire les autre dire que c'est faux, sans savoir pourquoi.
Je dis cela que j'ai programmer en C ! Mais maintenant que tu le dis, effectivement cela me semble également possible avec des librairies.
Ensuite je parle de C++ car je trouve qu'il est bien plus simple que le C tous d'abord pour sa simplicité à la POO, il est évidemment bien plus complexe de créer une fenêtre en C, Pour cela il faut utiliser une libraire ... *Prise de tête.

Enfin avec java cela doit être possible mais ne connaissant pas du tous ce langage je n'oriente personne vers celui-ci car il est long très long à apprendre.

Mais nous ne sommes pas dans un forum autoit?? ... :lol:

Voilà !

P.S : Le site du zéro sort un livre sur la programmation en C, "Apprenez à programmer en C : le premier Livre du Zéro !"
Le livre est actuellement en cours d'impression et sera réellement disponible à partir du 20 novembre 2009. Il sera vendu sur le Site du Zéro exclusivement dans un premier temps et, si tout se passe bien, il pourrait paraître en librairie dans les mois qui suivront.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Découper une fenêtre

#10

Message par Iste »

Oki, donc je suis bien d'accord ^^
En effet, c'est peut etre (surement) pas le moyen le plus facile...

Sinon, vu que la problématique me semble changer (a savoir juste prendre un bout de capture et l'afficher ailleurs) je vais, pour me faire pardonner de mon écart, utiliser la (super) fonction déniché par Tlem pour essayer de faire une exemple, car honetement, je suis bluffé :)

J'uperai
Signez ici
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#11

Message par periaz »

Bonsoir,
Je ne comprend pas, Tlem, quand vous me dîtes "mais une idée qui peut être envisagée, serait d'afficher l'information dans une fenêtre masquée"

Comment prendre une information dans une fenêtre inactive ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Découper une fenêtre

#12

Message par Tlem »

Le bout de code que je vous ai donné dans mon message précédent vous permettra de capturer une région d'une fenêtre, qu'elle soit masquée ou non.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#13

Message par periaz »

Je ne comprend pas comment faire une capture de la fenêtre masqué avec votre code.
J'ai fais quelques recherches et essais, mais sans résultats.

Comment faut-il donc faire ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Découper une fenêtre

#14

Message par Tlem »

Hummm, après avoir regardé de prêt, il semble que cette fonction soit relativement ancienne.
Le but était de fournir le handle de la fenêtre que vous vouliez capturer, mais sans avoir la possibilité de choisir le rectangle de sélection. Il aurait alors fallut travailler sur l'image elle même (grâce au handle du bitmap retourné).

Mais en cherchant quelques secondes dans la documentation, j'ai trouvé cette fonction : _ScreenCapture_CaptureWnd(). :mrgreen:

La capture ne fonctionne que si la fenêtre est en arrière plan.
Cela ne fonctionne pas sur les fenêtres minimisées ou cachées.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Découper une fenêtre

#15

Message par Iste »

_ScreenCapture_CaptureWnd() beaucoup moins bien
Elle ne fait en faite qu'une capture aux coordonées de la fenetre. Donc si en arriere plan ou hors de l'écran, béh marche plus !
essayez vous meme

Sinon, ce n'est pas un vrai exemple complet, mais voici comment sauvegarder l'image d'une fenetre complete
► Afficher le texte
Il me reste a tout mettre dans une seule fonction, découper éventuellement l'image voulue. Par la suite, créez une GUI avec une picture pour afficher cette image.
Si l'image est actualisée tout les seconde, cela fera "comme si" on voyait l'autre fenetre.

Bref, je plance toujours sur un vrai exemple, mais je suis assez occupé en ce moment dsl
Signez ici
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#16

Message par periaz »

Bonjour,
J'ai essayé votre méthode Iste, mais AutoIt me signale une erreure :
Error
0 1400
Je ne comprend pas ce qui ne va pas dans le script :(
periaz
Niveau 4
Niveau 4
Messages : 89
Enregistré le : sam. 25 avr. 2009 11:52
Status : Hors ligne

Re: [..] Découper une fenêtre

#17

Message par periaz »

Bonjour,
Finalement, je vais mettre une plus grande résolution d'écran pour voir mes deux pages.

J'ai cependant une autre question.
Est-il possible de simuler un click sur une fenêtre inactive ?

Par exemple :

Code : Tout sélectionner

Mouseclick("left", 500, 250, hwnd)
??? Je ne sais pas si c'est possible
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [..] Découper une fenêtre

#18

Message par guitarist »

Et si on activai la fenetre d'habord avec un WinActivate?
Avatar du membre
Narmeke
Niveau 6
Niveau 6
Messages : 247
Enregistré le : mer. 28 oct. 2009 11:31
Localisation : Libourne
Status : Hors ligne

Re: [..] Découper une fenêtre

#19

Message par Narmeke »

Je c'est pas il faut tester
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Découper une fenêtre

#20

Message par timmalos »

Oui, c'est possible sans activer la fenetre.

Regardez l'aide pour la fonction ControlClick()
Répondre