|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : août 2008 Messages : 32 ![]() |
Bonjour à tous,
Un programme peut-il connaître la position du curseur au moment de son appel ? Je ne parle pas ici de passer cette position en paramètres (ce serait trop facile), mais j'avais dans l'idée que cette position était peut-être indiquée au niveau d'une des DS système lors de l'initialisation du programme. J'ai essayé de voir au niveau des INFDS de l'écran et du programme, mais je n'ai rien trouvé de concluant. Auriez-vous une idée ? Merci |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
Non ce n'est pas possible et c'est logique. C'est pareil dans le monde windows.
J'essaye de comprendre dans quel cas celà peut-être utile mais je ne trouve pas. Peux-tu m'éclairer ? |
|
|
00
|
|
|
#3 | ||||
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 1 298 ![]() |
Citation:
Citation:
Code :
|
||||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
Philippe,
je pense que notre ami ne veut pas la position du curseur dans l'écran du programme en cours, mais la position du curseur d'un programme précédent. Imagine le programme en cours n'a pas d'écran, aucune carte F et que l'on veut récupérer la prosition du curseur de l'appelant qui lui avait un écran !!! |
|
|
00
|
|
|
#5 | ||
|
Membre habitué
![]() Inscription : août 2008 Messages : 115 ![]() |
Bonjour,
J'ai compris la même chose que K2R400 et dans ce cas, effectivement l'INFDS de l'écran du programme appelé ne donnera pas la bonne réponse (car pour que la pos curseur soit alimentée il faut faire une I/O sur le fichier écran associé). Il y a cependant une solution avec les API DSM (Dynamic Screen Manager) et tout particulièrement QsnGetCsrAdr Voici un petit programme qui marche tel quel : Code :
|
||
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 1 298 ![]() |
Peut-être bien que j'ai compris de travers mais faut dire aussi que la question n'est pas vraiment limpide de clarté ni claire de limpidité
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
@jump400,
je les avais oublié ces APIs DSM, bien vu. Peut-être que notre ami mutsum1 nous dira ce qu'il compte en faire, car ça aiguise ma curiosité. |
|
|
00
|
|
|
#8 |
|
Membre habitué
![]() Inscription : août 2008 Messages : 115 ![]() |
|
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : août 2008 Messages : 32 ![]() |
Merci à vous pour ces réponses, et en particulier à Jump400, ça marche nickel
Désolé pour ma question un peu trop évasive. En fait je cherchais tout simplement à générer un menu contextuel lors d'un click de souris. Or la base d'un tel procédé est que la fenêtre s'affiche au niveau de la position du curseur au moment de l'appel, d'où ma demande... Il ne me reste plus qu'à calculer la position précise de l'affichage en fonction de la taille du menu, et le rendu devrait être assez intéressant. Un grand merci à vous... |
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : août 2008 Messages : 32 ![]() |
Bon en fait j'ai pris le problème à l'envers.
J'étais persuadé qu'il était possible de régler par programme la taille d'une fenêtre, mais apparemment on ne peut jouer que sur sa position. Du coup impossible de faire vraiment mieux que le *DFT déjà existant. C'est bien dommage, surtout quand le contenu de la fenêtre est variable... |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Patrick Inscription : mai 2008 Messages : 821 ![]() |
Dans ce cas soit tu utilises les APIs DSM pour fabriquer ta fenête mais dans ce cas il y a du boulot, soit tu te fais 4 ou 5 fenêtres identiques (voir plus) avec des tailles différentes. Tu afficheras le bon format en fonction de tes calculs.
Ca ressemble à une invite générique ça |
|
|
00
|
|
|
#12 |
|
Invité régulier
![]() Inscription : août 2008 Messages : 32 ![]() |
Oui c'est tout à fait ça.
Dans l'idée, le programme recevrait en paramètre un tableau contenant les options possibles, il afficherait la fenêtre correspondante, et renverrait en retour l'option sélectionnée. J'aime bien ton idée des fenêtres multiples. A défaut de pouvoir régler la dimension, je vais partir dans cette direction. Merci beaucoup. |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() Inscription : novembre 2004 Messages : 1 298 ![]() |
Regarde les fenêtres sur cette page, ça peut peut-être t'inspirer. Il y a le code DDS et RPG avec le rendu.
Toutefois, de nos jours, personnellement je n'irais plus me prendre la tête avec des écrans verts ! |
|
|
00
|
|
|
#14 |
|
Invité régulier
![]() Inscription : août 2008 Messages : 32 ![]() |
Merci pour le lien.
je n'y pas trouvé la réponse à mes questions, mais certaines idées sont intéressantes, en particulier l'affichage d'une image. Je suis donc resté sur mes fenêtre multiples avec une sélection de la plus adaptée selon le contenu. Ca marche bien, le rendu est impeccable. Merci à tous. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com