September 06, 2010     | Register
  
Subject: ALV OO resolution de l'écran.
Prev Next
You are not authorized to post a reply.

Author Messages

crepmaster
Messages:32

29/07/2010 10:08:18  

Salut à tous,

j'aimerai pouvoir choisir le nombre de colonne ( e donc la dimension de mon container) de mon alv oo en fonction de la résolution de l'ecran.

Une idée de comment proceder s'il vous plait?

 

Merci d'avance...


sandraros
Messages:193

29/07/2010 10:45:39  

Le code ci-après récupère la HAUTEUR réellement utilisée dans un conteneur (de son ALV dans ton cas; tu peux l'adapter en utilisant width à la place de height ):

go_container->set_metric( metric = cl_gui_container=>metric_pixel ).
go_container->set_mode( mode = cl_gui_splitter_container=>mode_absolute ).
DATA l_height TYPE i.
go_container->get_height( IMPORTING height = l_height ).
CALL METHOD cl_gui_cfw=>flush( ).

IMPORTANT: la variable n'est initialisée que lorsque les données sont flushées vers SAPGUI (on récupère donc la valeur juste après appel de CL_GUI_CFW=>FLUSH).

Remarque: une autre solution est de ne pas faire de flush, celui-ci étant fait implicitement à l'affichage (à la fin du PBO donc), mais il faut appeler get_height en indiquant une variable globale, dont on pourra récupérer la valeur dans le PAI (si on utilise une variable locale, ça fera un dump SYSTEM_POINTER_PENDING "Use of local result variables in a Control/Automation call").


sandraros
Messages:193

29/07/2010 11:07:18  

J'oubliais, pour la résolution totale de l'écran, si tu en as besoin, le code ci-après les affiche:

 DATA: lo_gui_props  TYPE REF TO cl_gui_props_consumer,
      ls_metrics    TYPE cntl_metric_factors.
lo_gui_props = cl_gui_props_consumer=>create_consumer( ).
ls_metrics = lo_gui_props->get_metric_factors( ).
WRITE : / 'Largeur:', ls_metrics-screen-x'pixels;',
          'Hauteur:', ls_metrics-screen-y, 'pixels.'.

 


Maverick
Messages:147

29/07/2010 11:08:10  
sa sent l'expérience du bump sandraros mdr , en tout cas merci ca pourra toujours me servir un jour ou l'autre de savoir comment faire pour récupérer la taille d'un container

"Le problème se situe souvent entre le siège et le clavier."
"La perfection est atteinte non quand il ne reste rien à ajouter, mais quand il ne reste rien à enlever"

sandraros
Messages:193

29/07/2010 11:17:15  

Je ne connaissais pas le mot, j'imagine qu'il s'agit de ça? http://www.thebumpexperiment.com/id3.html


crepmaster
Messages:32

29/07/2010 11:29:12  

Merci ça fonctionne nickel!!!!!

je me surprend tous les jours les possibilités de l'abap oo en particulier sur les interfaces!


Celdrøn
Messages:1401

29/07/2010 11:31:46  

Je ne connaissais pas non plus.
Oui je sais, ça parait étonnant, et pourtant...
Je me ferais chier si je n'apprenais plus rien à mon age.

Bon à savoir.

Par contre, quand les méthodes sont marqués en "Internal Use !", je me méfie quand même un peu.


Soutenez moi dans ma lutte contre le webmaster : http://celdron.labrute.fr
"Un être en tant qu'être, ne pourrait-il pas être autre qu'il n'est...s'il n'explique pas lui même son être?"

ABAPeloula !!! ça va dumper !!!
Sur un air de musique, ça pourrait faire le nouveau tube de l'été ^_^

Maverick
Messages:147

29/07/2010 12:50:29  
je voulais écrire "Dump" mdr , c'est juste que j'etais presser de partir manger et que je pensais à autre chose.

Que Celdrøn connaisse pas , la ca m'impressionne par contre :D Je dis Félicitation à Sandraros et je fais pété les feux d'artifices


"Le problème se situe souvent entre le siège et le clavier."
"La perfection est atteinte non quand il ne reste rien à ajouter, mais quand il ne reste rien à enlever"

Celdrøn
Messages:1401

29/07/2010 13:00:39  

Ben en Java, je t'aurais trouvé ça en deux coups de cuillère à pot... ce sont des variables d'instance de la classe JFrame.

Mais en ABAP, je fais comme tout le monde, je fais un écran via le screen painter et donc je ne connais pas trop les classes permettant de travailler avec des écrans...

Faudrait que je le fasse un jour, mais bon... quand je parle de POO dans ma boite actuelle, on me prend pour un hérétique. -_-"
Bref, rien ne me motive pour l'instant de m'en donner à cœur joie.


Soutenez moi dans ma lutte contre le webmaster : http://celdron.labrute.fr
"Un être en tant qu'être, ne pourrait-il pas être autre qu'il n'est...s'il n'explique pas lui même son être?"

ABAPeloula !!! ça va dumper !!!
Sur un air de musique, ça pourrait faire le nouveau tube de l'été ^_^

crepmaster
Messages:32

29/07/2010 15:44:27  

si cela peut te consoler, j'ai le meme problème dans la boite où je suis, ils sont terrorisés pour la maintenance car pratiquement aucun de leur internes ne fait de POO...moi meme je suis bizu dessus mais je m'éfforce depuis pratiquement janvier de ne produire que du code OO, et je comprends pourquoi mon prof insistait tant car vraiment ça rend la maintenance beaucoup simple et rapide. Tu perds du temps au début mais tu en gagnes énorment par la suite...

You are not authorized to post a reply.
Forums > Forums SAP > Technique : ABAP et ABAP OO > ALV OO resolution de l'écran.



ActiveForums 3.7