Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

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

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 03-09-2007 15:37:52

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

[ASTUCE] Truc PB à 1000 pépites

Je ne l'ai pas vu sur le forum, donc je me permet d'ajouter cette astuce.

Attention, le truc suivant vaut très cher !
Il est non documenté.
Vous ne le trouverez jamais chez Sybase.
Google ne vous aidera pas non plus.
Il est connu par 1 développeur PB sur 10000.

Du coup n'hésitez pas à faire vos dons en pépites...

Dans la partie déclarative des variables d'instances d'un objet ancêtre, vous pouvez choisir l'onglet, le groupe et le label à présenter dans les propriétés des descendants en utilisant le mot clé descriptor.

Comment faire ?

1 créez votre objet ancêtre
2 ajoutez les propriétés dans les variables d'instance comme ci-dessous

Code: pb

String is_toto descriptor "pb_format"="DataType=string~tGroup=PBaDonf~tDivider=Astuce 1~tLabel=Combien de pépites pour chrnico" = "1000 pépites"
boolean ib_tutu descriptor "pb_format"="DataType=boolean~tGroup=PBaDonf~tLabel=Les donner ?" = True

3 héritez de votre objet. Et là, magie ! vous avez un onglet PBaDonf...
Merci pour les pépites


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#2 03-09-2007 16:02:44

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [ASTUCE] Truc PB à 1000 pépites



trouvé sur les newgroups


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#3 03-09-2007 16:05:18

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

argl

Bon, ça doit être plus facile de trouver avec Google quand on sait ce que l'on cherche

Ben avec Chris disons qu'on était au moins 2 / 20000


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#4 03-09-2007 16:05:43

shahin  
Modérateur
Award: bf
Lieu: val de marne
Date d'inscription: 26-09-2006
Messages: 938
Pépites: 8,675,050,269
Banque: 16,218,225,127,617

Re: [ASTUCE] Truc PB à 1000 pépites

à tous les deux


200 pépitos à Chrnico


never let people work on more than one thing at once.

Hors ligne

 

#5 03-09-2007 16:09:53

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

Merci à toi Shahin.
Merci également à Hellkinder.


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#6 03-09-2007 16:14:26

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

eRaSorZ a écrit:



trouvé sur les newgroups

Sur le newsgroup il est dit :

newsgroup a écrit:

"This is considered an advanced and awesome feature.  Use it if you're a
cool PB guru."

je pense qu'il faut traduire pour ceux qui ne comprendrait pas


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#7 03-09-2007 16:18:21

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [ASTUCE] Truc PB à 1000 pépites

Chrnico a écrit:

newsgroup a écrit:

"This is considered an advanced and awesome feature.  Use it if you're a
cool PB guru."

je pense qu'il faut traduire pour ceux qui ne comprendrait pas

google traduction a écrit:

Ceci est considéré un dispositif avançé et impressionnant. L'employer si vous êtes a
refroidir le gourou de PB

en gros si tu veux un gourou de PB...


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#8 03-09-2007 16:20:32

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

eRaSorZ a écrit:

Chrnico a écrit:

newsgroup a écrit:

"This is considered an advanced and awesome feature.  Use it if you're a
cool PB guru."

je pense qu'il faut traduire pour ceux qui ne comprendrait pas

google traduction a écrit:

Ceci est considéré un dispositif avançé et impressionnant. L'employer si vous êtes a
refroidir le gourou de PB

Moi a refroidir le gourou de PB avec un dispositif impressionnant.


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#9 09-06-2011 20:05:58

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

Petits compléments

http://geni.ngs.ma/public/images/descriptor_tab_1.png
http://geni.ngs.ma/public/images/descriptor_tab_2.png
http://geni.ngs.ma/public/images/descriptor_tab_3.png
http://geni.ngs.ma/public/images/descriptor_tab_4.png
http://geni.ngs.ma/public/images/descriptor_tab_5.png
http://geni.ngs.ma/public/images/descriptor_tab_6.png
http://geni.ngs.ma/public/images/descriptor_tab_7.png

Source du fichier (objet nonvisuel) nvo_test.sru

Code: pb

forward
global type nvo_test from nonvisualobject
end type
end forward

global type nvo_test from nonvisualobject
end type
global nvo_test nvo_test

type variables
//pbadonf / Chrnico
String is_toto descriptor "pb_format"="DataType=string~tGroup=PBaDonf~tDivider=Astuce 1~tLabel=Combien de pépites pour chrnico" = "1000 pépites"
boolean ib_tutu descriptor "pb_format"="DataType=boolean~tGroup=PBaDonf~tLabel=Les donner ?" = True
// Erasorz (from google group)
string  is_picture        descriptor "pb_format" = "DataType=string~tGroup=Google~tStyle=File~tUI=Picture~tLabel=Picture"
string  is_hoveringpicture    descriptor "pb_format" = "DataType=string~tGroup=Google~tStyle=File~tUI=Picture~tLabel=Picture While Hovering"
long   il_textcolor       descriptor "pb_format" = "DataType=long~tGroup=Google~tStyle=Color~tLabel=Text Color"
long   il_hoveringtextcolor    descriptor "pb_format" = "DataType=long~tGroup=Google~tStyle=Color~tLabel=Text Color While Hovering"


// xlat  hacking results :-)
//Selection d'un type Enum
Encoding ienc_encoding descriptor "pb_format" = "Group=Lists~tLabel=File Encoding~tHelp=This is a help~tStyle=Enum~tSystemType=Encoding"
Object ieo_object descriptor "pb_format"="Group=Lists~tLabel=KindObject~tStyle=Enum~tSystemType=Object"
//Selection d'une image (4 types de liste par défaut)
string is_my_pic descriptor "pb_format" = "Group=Lists~tStyle=Picture~tUI=BRW"
string is_my_cur descriptor "pb_format" = "Group=Lists~tStyle=Picture~tUI=C"
string is_my_ico descriptor "pb_format" = "Group=Lists~tStyle=Picture~tUI=I"
string is_my_bi descriptor "pb_format" = "Group=Lists~tStyle=Picture~tUI=BI"
//Color selector
long il_color descriptor "pb_format" = "Group=Lists~tOrder=2~tStyle=Color~tDataType=Long~tLabel=Sans Transparent"
long il_color2 descriptor "pb_format" = "Group=Lists~tOrder=1~tStyle=Color~tDataType=Long~tShowTransparent=True~tLabel=Avec Transparent"
//Selection d'un type d'objet PB
string is_dw descriptor "pb_format" = "Group=Pickers~tLabel=Dataobject~tStyle=PBObject~tSystemType=Datawindow"
string is_win descriptor "pb_format" = "Group=Pickers~tLabel=Window~tStyle=PBObject~tSystemType=Window~tCaption=My caption~tHelp=My Help"
string is_men descriptor "pb_format" = "Group=Pickers~tLabel=Menu~tStyle=PBObject~tSystemType=Menu"
string is_pip descriptor "pb_format" = "Group=Pickers~tLabel=Pipeline~tStyle=PBObject~tSystemType=Pipeline"
string is_qry descriptor "pb_format" = "Group=Pickers~tLabel=Query~tStyle=PBObject~tSystemType=Query"
string is_app descriptor "pb_format" = "Group=Pickers~tLabel=Application~tStyle=PBObject~tSystemType=Application"
string is_fun descriptor "pb_format" = "Group=Pickers~tLabel=Function~tStyle=PBObject~tSystemType=Function"
string is_str descriptor "pb_format" = "Group=Pickers~tLabel=Structure~tStyle=PBObject~tSystemType=Structure"
string is_prj descriptor "pb_format" = "Group=Pickers~tLabel=Project~tStyle=PBObject~tSystemType=Project"
string is_use descriptor "pb_format" = "Group=Pickers~tLabel=User object~tStyle=PBObject~tSystemType=Userobject"
//File
string is_vide descriptor "pb_format" = "Group=Pickers~tStyle=File~tLabel=Vidéo~tCaption=Select AVI File~tDefExt=avi~tItems=AVI File(*.avi)|*.avi"
//DatePicker
date ida_birthday descriptor "pb_format" = "Group=Pickers~tStyle=DatePicker~tDataType=Date~tHelp=The day you are born" = Date( 1979-07-17 )
datetime idati_hack descriptor "pb_format" = "Group=Pickers~tStyle=DatePicker~tDataType=DateTime" = DateTime( 2011-06-09, 20:53:00 )
//EditText
string is_my_mle descriptor "pb_format"="Group=Edits~tStyle=EditText~tMultiLine=True~tLabel=Multi-ligne"
string is_my_pwd descriptor "pb_format"="Group=Edits~tStyle=EditText~tPassword=True~tLabel=Password" = "des étoiles"
//Slider
long il_slider descriptor "pb_format"="Group=Edits~tStyle=Number~tUI=Slider~tLabel=Long Slider"
//Spinner
long il_spinner descriptor "pb_format"="Group=Edits~tStyle=Number~tUI=Spinner~tMin=128~tMax=255~tLabel=Long Spinner (from 128 to 255)"
//EditMenu
string is_PopupMenu descriptor "pb_format"="Group=Edits~tStyle=EditMenu~tLabel=Mask~tItems=Text1|Text2~tValues=Val1|Val2"

//Le style Grid n'est pas enregistrable sur les Heritiers convenablement...
//Flat = format "applatis" ou sérialisé dans une chaine, ressemble à :
//      string is_pictures_flat = "{~"ArrangeTables!~",~"HOW!~",~"Arrow!~",~"Structure!~"}"
//      string is_items_flat = "{~"Item 1~",~"Item 2~",~"Le trois~",~"Le quatre~"}"
string is_pictures_flat descriptor "pb_format"="Group=Grids~tLabel=Pictures(flat)~tStyle=Grid~tStyles=Picture~tDatatype=String~tLines=3"
string is_items_flat descriptor "pb_format"="Group=Grids~tLabel=Items(flat)~tStyle=Grid~tDatatype=String~tLines=3"
//Array : /!\ ne fonctionne pas pour la relecture des valeurs du champ.
/*
   c-à-d que l'instance de cette classe n'arrivera pas a représenter les valeurs saisies en mode Design,
   et sont perdus au prochain enregistrement : à bannir ! ( :snif: ) 
*/
string is_pictures[] descriptor "pb_format"="Group=Grids~tLabel=Pictures array~tStyle=Grid~tStyles=Picture~tDatatype=String~tLines=3"
string is_items[] descriptor "pb_format"="Group=Grids~tLabel=Items array~tStyle=Grid~tDatatype=String~tLines=3"

//NOT WORKING... :blet:
//Font selector
string is_font descriptor "pb_format"="Group=Fonts~tStyle=EditDialog~tLabel=Font~tHelp=Font~tEdit=true~tDivider=Font"
//Fonts property
string is_f_name descriptor "pb_format"="Group=Fonts~ttStyle=Font~tLabel=FaceName~tFontProperty=FaceName"
integer ii_f_size descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=TextSize~tFontProperty=TextSize"
long il_f_bold descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=Bold~tFontProperty=Weight"
boolean ib_f_italic descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=Italic~tFontProperty=Italic"
boolean ib_f_underline descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=Underline~tFontProperty=Underline"
FontCharSet ie_f_cset descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=FontCharSet~tFontProperty=FontCharSet"
FontPitch ie_f_pitch descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=FontPitch~tFontProperty=FontPitch"
FontFamily ie_f_fam descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=FontFamily~tFontProperty=FontFamily"
boolean ib_f_strikeout descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=Strikeout~tFontProperty=Strikeout"
long il_f_tcolor descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=TextColor~tFontProperty=TextColor"
long il_f_bcolor descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=BackColor~tFontProperty=BackColor"
long il_f_escapement descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=Escapement~tFontProperty=Escapement"
//Boom
//long _1 descriptor "pb_format"="Style=Font~tFontSet=%s~tGroup=%s~tLabel=Sample~tHelp=Font Sample~tFontProperty=FontSample"
//long _2 descriptor "pb_format"="Style=Font~tFontSet=%s~tGroup=%s~tLabel=~tHelp=~tFontProperty=FontMessage"
string is_sizemode descriptor "pb_format"="Group=Lists~tStyle=SingleChoice~tLabel=SizeMode~tItems=clip!|stretch!"
string is_borderstyle descriptor "pb_format"="Group=Lists~tLabel=BorderStyle~tStyle=SingleChoice~tItems=StyleBox!|StyleLowered!|StyleRaised!|StyleShadowBox!~tImages=105|16|2|5|6|1"
long il_pictwidth descriptor "pb_format"="Group=Lists~tStyle=SingleChoice~tLabel=PictureWidth~tItems=(Default)|16|32~tValues=0|16|32"
Alignment ie_alignment descriptor "pb_format"="Group=Lists~tStyle=SingleChoice~tLabel=Alignment~tItems=Center!|Left!|Right!~tImages=106|16|2|0|1"
grGraphType ie_graphtype descriptor "pb_format"="Group=Lists~tStyle=Enum~tLabel=GraphType~tSystemType=grGraphType~tImages=104|16"
FillPattern ie_fill descriptor "pb_format"="Group=Lists~tStyle=Enum~tSystemtype=FillPattern~tLabel=FillPattern~tImages=103|24"
LineStyle ie_linestyle descriptor "pb_format"="Group=Lists~tStyle=Enum~tSystemtype=LineStyle~tLabel=LineStyle~tImages=102|24|0|1|2|3|4|-1"
end variables
on nvo_test.create
call super::create
TriggerEvent( this, "constructor" )
end on

on nvo_test.destroy
TriggerEvent( this, "destructor" )
call super::destroy
end on


Parcontre, sur des objets visuels, il y a un décalage que je ne m'explique pas (de 5 variables sur une datawindow par exemple...)

Dernière modification par xlat (13-06-2011 16:18:23)


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#10 10-06-2011 08:33:53

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

Chrnico a écrit:

Vous ne le trouverez jamais chez Sybase.

Apparemment, chez Sybase c'était documenté dans "PB 7.0 Documentation for Advanced User" (d'après le post mentionné par eRaSorZ) mais plus moyen de mettre la main sur cette doc (alors qu'on trouve encore la doc de PB 5/6/6.5 pour mac et unix).

Si jamais il y a des devs PB de longue date qui sont du genre conservateurs, vous pouvez toujours chercher dans vos archives...


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#11 10-06-2011 09:23:42

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

xlat a écrit:

Parcontre, sur des objets visuels, il y a un décalage que je ne m'explique pas (de 5 variables sur une datawindow par exemple...)

il y a quand même un petit workarround...
par exemple sur une hscrollbar il y à un décalage de 2 variables, et l'edit source montre :

Code: pb

forward
global type uo_hsb from hscrollbar
end type
end forward

global type uo_hsb from hscrollbar
integer width = 311
integer height = 68
end type
global uo_hsb uo_hsb

type variables
//pbadonf / Chrnico
String is_toto descriptor "pb_format"="DataType=string~tGroup=PBaDonf~tDivider=Astuce 1~tLabel=Combien de pépites pour chrnico" = "1000 pépites"
boolean ib_tutu descriptor "pb_format"="DataType=boolean~tGroup=PBaDonf~tLabel=Les donner ?" = True
end variables

on uo_hsb.create
end on

on uo_hsb.destroy
end on


en commentant les lignes

Code: pb

//integer width = 311
//integer height = 68

la classe visuelle et ses héritiers peuvent visualiser correctement ces propriétés...
Néanmoins, çà oblige à passer dans l'editsource et à gérer une couche supplémentaire d'héritage ou bricoler dans le constructeur ce qui n'est pas terrible pour l'héritage des propriétés


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#12 10-10-2012 14:12:04

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Je suis tombé sur ce sujet par hasard ce matin et ce qui est bien c'est qu'il y a quelques jours je me demandais exactement comment faire ça
J'ai rencontré le bug de décalage dans les objets visuels puis j'ai lu la suite du sujet et j'ai vu que c'était "normal" je trouve dommage que Sybase n'ai pas corrigé et documenté cette fonctionnalité mais bon...

Pour le contourner j'ai d'abord essayé de déclarer les variables dans le global type avec l'edit source, ça marche super bien, pas de décalage mais cela empêche toute modification de l'objet dans l'éditeur visuel ce qui est quand même très gênant.

M'est donc venu une autre idée (ici un exemple avec un commandbutton)

Je crée un objet de base dans lequel je déclare mes variables d'instance, je fais passer ces variables d'instance dans le global type avec l'edit source, la seule fonction de cet objet est la déclaration des variables, je ne code rien car toute édition de cet objet devra passer par l'edit source si une des variables ainsi déclarée est utilisée.

Code: pb

forward
global type u_commandbutton_variables from commandbutton
end type
end forward

global type u_commandbutton_variables from commandbutton
public    boolean  ib_ancrage_haut descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tDivider=Ancrage~tLabel=En haut" = true
public    boolean  ib_ancrage_bas descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tLabel=En bas" = false
public    boolean  ib_ancrage_droite descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tLabel=A droite" = false
public    boolean  ib_ancrage_gauche descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tLabel=A gauche" = true
public    boolean  ib_redim_pct_hauteur descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tDivider=Redimensionner la taille du contrôle~tLabel=En pourcentage de la hauteur" = false
public    boolean  ib_redim_pct_largeur descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tLabel=En pourcentage de la largeur" = false
public    boolean  ib_redim_font descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tDivider=Redimensionner la taille de la police~tLabel=Changer la taille de la police" = true
public    boolean  ib_limiter_taille_font descriptor "pb_format"="DataType=boolean~tGroup=Sigma~tLabel=Texte toujours affiché en entier" = true
public    boolean  ib_pos_rel_hauteur = false
public    boolean  ib_pos_rel_largeur = false
integer width = 457
integer height = 128
integer textsize = -11
integer weight = 400
fontcharset fontcharset = ansi!
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "Tahoma"
end type
global u_commandbutton_variables u_commandbutton_variables

on u_commandbutton_variables.create
end on

on u_commandbutton_variables.destroy
end on

Puis je crée mon vrai objet que je fais hériter du premier, bien sûr je ne redéclare pas mes variables

Code: pb

forward
global type u_commandbutton from u_commandbutton_variables
end type
end forward

global type u_commandbutton from u_commandbutton_variables
end type
global u_commandbutton u_commandbutton

type variables
private  long    il_dist_haut = 0
private  long    il_dist_bas = 0
private  long    il_dist_gauche = 0
private  long    il_dist_droite = 0
private  dec{5}  idc_pct_hauteur_font = 0
private  dec{5}  idc_pct_largeur_font = 0
private  dec{5}  idc_pct_hauteur_objet = 0
private  dec{5}  idc_pct_largeur_objet = 0
private  dec{5}  idc_taille_font_origine
private  long    il_taille_controle_origine
private  dec{5}  idc_pos_rel_haut
private  dec{5}  idc_pos_rel_bas
private  dec{5}  idc_pos_rel_gauche
private  dec{5}  idc_pos_rel_droite
end variables

forward prototypes
public subroutine of_resize ()
public subroutine of_get_texte (ref string as_texte)
public subroutine of_get_ancrage_controle (ref s_ancrage astr_ancrage)
public subroutine of_get_police (ref s_police_controle astr_police)
public subroutine of_get_dist_controle (ref s_distance_controle astr_dist)
public subroutine of_set_taille_police (decimal adc_font_size)
end prototypes

public subroutine of_resize ();// ---------------------------------------------------------------------------
// [of_resize]
... ici le reste de mon code pour l'objet ...

Et petite cerise sur le McDo je peux accéder à mes variables avec le format que j'ai défini et non pas dans le instance variables ce que je trouve très confortable

http://i37.servimg.com/u/f37/17/67/83/64/pbadon10.png

En tout cas merci pour l'astuce elle m'est bien utile.

Dernière modification par _francois_ (10-10-2012 14:14:04)

Hors ligne

 

#13 10-10-2012 15:32:36

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: [ASTUCE] Truc PB à 1000 pépites

et merci pour ton post.

t'as pas des prix sur les scéances de thalasso pour les vieux dév. PB fatigués ?

Dernière modification par rincevent (10-10-2012 15:32:42)


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#14 10-10-2012 16:45:09

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

@ _francois_ : merci, et en plus la technique fonctionne sur plusieurs héritiers (même en rajoutant sur un héritier une nouvelle propriété descriptor mais juste après la ligne du "global type") et sans perdre les pédales !


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#15 23-10-2012 07:00:25

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Ma boite fait des logiciels pour les thalasso mais je n'ai pas de prix :'(

Petit truc qui me gêne c'est que dans le color je n'ai pas le transparent (PB 12.5.1) et ça m'aurait bien arrangé de l'avoir et même mieux pouvoir construire moi même les couleurs à choisir.
Dans les version précédentes de PB on avait les Custom Colors dans le pb.ini mais je ne les retrouve pas dans ma version est-ce que quelqu'un sait où elles sont ?

Hors ligne

 

#16 23-10-2012 07:14:38

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: [ASTUCE] Truc PB à 1000 pépites


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#17 23-10-2012 09:19:12

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Ma question était plutôt de savoir si on pouvait modifier le dropdown de sélection de couleurs (à part les cutom colors évidement) je ne pense pas avoir vu de réponse sur le lien mais merci quand même

Hors ligne

 

#18 23-10-2012 09:47:01

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

pour ajouter le transparent il y avait l'exemple suivant :

Code: pb

long il_color2 descriptor "pb_format" = "Group=Lists~tOrder=1~tStyle=Color~tDataType=Long~tShowTransparent=True~tLabel=Avec Transparent"

https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#19 23-10-2012 10:18:29

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Rho le boulet que je suis ça m'a échappé merci beaucoup

Hors ligne

 

#20 10-08-2017 13:08:22

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Un peu d'archeologie

Code: pb

//Fonts property
string is_f_name descriptor "pb_format"="Group=Fonts~ttStyle=Font~tLabel=FaceName~tFontProperty=FaceName"
integer ii_f_size descriptor "pb_format"="Group=Fonts~tStyle=Font~tLabel=TextSize~tFontProperty=TextSize"


Ca fonctionne chez vous ?
Ca ne marche pas sur mes PB 12.5 et 2017 alors que le reste des FontProperties fonctionne correctement.
Pas dramatique mais dommage.

Hors ligne

 

#21 25-01-2018 14:04:24

_francois_  
Bienfaiteur du site
Lieu: TOULOUSE
Date d'inscription: 25-03-2010
Messages: 151
Pépites: 178,983,268,111
Banque: 9,223,372,036,854,776,000

Re: [ASTUCE] Truc PB à 1000 pépites

Question à 2 pépites
pour les options du style Alignment ie_alignment descriptor "pb_format"="Group=Lists~tStyle=SingleChoice~tLabel=Alignment~tItems=Center!|Left!|Right!~tImages=106|16|2|0|1"
où l'on a un picturelistebox si je comprends bien le Images=106|16|2|0|1
106 c'est un ID de liste
16 c'est la taille de l'image
le reste sont les ID des images dans le liste

savez vous si l'on peut utiliser des images customs pour cette picturelistbox ?
Dans ce cas il faut le bon ID liste et à la place des ID image le chemin des images
Le but pour moi ici est de contourner la palette de couleur trop réduite dans le Style=Color et proposer une palette personnalisée plus importante.

merci

Hors ligne

 

#22 13-11-2019 16:01:59

pBLove  
Membre
Date d'inscription: 08-11-2019
Messages: 17
Pépites: 72
Banque: 0

Re: [ASTUCE] Truc PB à 1000 pépites

Bonjour, je suis en PB12.0

J'ai créé un bouton à partir d'un picturebutton.
J'ai besoin d'une variable pour la couleur et j'ai donc cette ligne dans mon onglet "variables d'instance"

Code: pb

long il_PbBackcolor descriptor "pb_format" = "DataType=long~tGroup=Font~tStyle=Color~tLabel=Text Color" = 13554432

dans son contexte :

Code: pb

global type u_cb_onoff_anc from picturebutton
integer width = 494
integer height = 96
integer textsize = -8
integer weight = 400
fontcharset fontcharset = ansi!
fontpitch fontpitch = variable!
fontfamily fontfamily = swiss!
string facename = "MS Sans Serif"
string text = "none"
boolean flatstyle = true
end type
global u_cb_onoff_anc u_cb_onoff_anc

type variables
private boolean ib_isOn = false

long il_PbBackcolor descriptor "pb_format" = "DataType=long~tGroup=Font~tStyle=Color~tLabel=Text Color"

Mais rien n'y fait... J'ai soit loupé un truc, soit …

Hors ligne

 

#23 14-11-2019 13:45:00

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

Bonjour,
Il faut hérité ton objet pour que cette propriété soit visible, deplus _francois_ à précisé qu'il était préférable de mettre ces propriétés dans le bloc "global type".

https://i.ibb.co/7Q1JrVy/pb-descriptor.png


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#24 15-11-2019 13:36:31

pBLove  
Membre
Date d'inscription: 08-11-2019
Messages: 17
Pépites: 72
Banque: 0

Re: [ASTUCE] Truc PB à 1000 pépites

J'ai l'impression de faire comme vous

https://i.ibb.co/kH7R1Zf/Power-Builder2.png
https://i.ibb.co/vJNm4vx/2019-11-15-14-33-44-Power-Builder.png

Dernière modification par pBLove (15-11-2019 13:45:58)

Hors ligne

 

#25 15-11-2019 16:33:57

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [ASTUCE] Truc PB à 1000 pépites

Ces nouvelles propriétés doivent être déclarées au début, juste après

Code: pb

global type u_cb_onoff_anc from picturebutton

https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22