Le forum (ô combien francophone) des utilisateurs de Powerbuilder.




Voici mon code (PB 10.5):
li_tabcount = UpperBound(tab_1.Control)
tab_1.OpenTabWithParm(uodw_1,il_sel_mfg,6)
tab_1.Control[li_tabcount].BackColor = tab_1.Control[1].BackColor
tab_1.Control[li_tabcount].TabBackColor = tab_1.Control[1].TabBackColor
tab_1.Control[li_tabcount].Text = "Tests/Routine"
Je voudrais que l'onglet que je crée porte le texte Tests/Routine et que la couleur de l'onglet soit la même que celle des autres onglets.
Hors, alors que mon onglet se crée correctement à la bonne place et que le retrieve de la dw se comporte correctement, l'onglet est gris et le texte est "none" !
Quelqu'un pourrait-il me dire ce que je ne fais pas bien ?
Dernière modification par BRWA (17-06-2009 16:58:03)
Hors ligne




OK, autant pour moi, j'avais oublié un +1 :
li_tabcount = UpperBound(tab_1.Control)
tab_1.OpenTabWithParm(uodw_1,il_sel_mfg,6)
tab_1.Control[li_tabcount+1].BackColor = tab_1.Control[1].BackColor
tab_1.Control[li_tabcount+1].TabBackColor = tab_1.Control[1].TabBackColor
tab_1.Control[li_tabcount+1].Text = "Tests/Routine"
Hors ligne














petite précision : tu spécifies en dur d'ouvrir l'onglet à la position 6 dans ton OpenTabWithParm, je suppose que li_tabcount = 5...
fais plutot un OpenTabWithParm(..., 0), là ton compteur servira vraiment et cela fonctionnera encore même si un jour tu ajoutes/retires un onglet NB : [RESOLU] en majuscules avec un espace entre ] et le titre...
Hors ligne




non, li_tabcount = 9 (en tous cas dans mon cas)
tab_1.Control est un vecteur, ajouter un tabpage à tab_1, c'est l'ajouter en dernière position Upperbound(Tab_1.Control) + 1
Et la position d'index qu'on donne dans le OpenTabWith Parm, c'est la position de l'onglet existant avant lequel on veut ouvrir le nouveau Tab. Si cet index est 0 ou supérieur au nombre de tabpage, alors le nouvel onglet se situera en dernier.
Dernière modification par BRWA (17-06-2009 16:59:26)
Hors ligne










BRWA a écrit:
OK, autant pour moi, j'avais oublié un +1 :
Code: pb
li_tabcount = UpperBound(tab_1.Control) tab_1.OpenTabWithParm(uodw_1,il_sel_mfg,6) tab_1.Control[li_tabcount+1].BackColor = tab_1.Control[1].BackColor tab_1.Control[li_tabcount+1].TabBackColor = tab_1.Control[1].TabBackColor tab_1.Control[li_tabcount+1].Text = "Tests/Routine"
J'aurais jamais pu trouver sans ton aide
Hors ligne