PureBasic Code Form Helper

Vous avez développé un logiciel en PureBasic et vous souhaitez le faire connaitre ?
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

Ar-S a écrit :Il faudrait que tu ajoutes le même checkbox que sur "windows" pour les x, y, InnerW et innerH avec la commande #PB_ignore.
Je dois être fatigué ! je ne comprend pas le sens de ta demande.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

Si vous avez des portions de code qui ne passent pas avec Code Form Helper, pouvez vous les poster. Merci :)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Code Form Helper

Message par Ar-S »

Les les cases à cocher puisse permettre le placer des #PB_Any et #PB_ignore là ou c'est possible.

Genre comme ça
Image

Quitte à ajouter une checkbox à coté de la 1ere.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

C'est possible mais dans ce cas comment l'utilitaire va connaitre les dimensions de la fenêtre de prévisualisation ?
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Code Form Helper

Message par Ar-S »

Si PB_Ignore est coché ton soft ne pourrait pas se référer à un WindowWidth/height ?(et à un windowX/Y pour le positionnement)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Code Form Helper

Message par Backup »

@Ar-s

heu PB_Ignore ne se justifie pas dans la creation d'une fenetre (openwindow ) , ou j'ai loupé un truc

ça peut se justifier pour un resize .... mais pas pour un openwindow ....

enfin ça creer une fenetre qui n'apparait pas ...

Code : Tout sélectionner

OpenWindow(1,#PB_Ignore,#PB_Ignore,#PB_Ignore,#PB_Ignore,"test")
le but de Code Form Helper , c'est d'analyser une interface deja ecrite .... dans le but de modification de position ... (enfin je crois )
d'ailleurs a ce titre, je n'aurai meme pas mis la premiere coche .... :)


lorsqu'on utilise Ctrl+fleche bas , seul la position verticale est de toute façon changé , ni la taille , ni la position horizontale, ne change ...donc ... :)
Dernière modification par Backup le lun. 21/oct./2013 10:22, modifié 1 fois.
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

Dobro a écrit :PB_Ignore ne se justifie pas dans la creation d'une fenetre (openwindow ) , ça peut se justifier pour un resize .... mais pas pour un openwindow ....ça cree une fenetre qui n'apparait pas ...
je ne peux que être d'accord avec Dobro. :)
Ar-S a écrit :Si PB_Ignore est coché ton soft ne pourrait pas se référer à un WindowWidth/height ?(et à un windowX/Y pour le positionnement)
Actuellement Code Form Helper analyse les paramètres figurant dans une ligne demandant la création de la fenêtre.

Code : Tout sélectionner

OpenWindow(#Mainform, 0, 52, 500, 400, "New Form", WindowStyle)
Dans cet exemple, la fenêtre de prévisualisation aura une taille de 500 x 400.

En l'absence de cette ligne de création de fenêtre, ce sera une fenêtre par défaut redimensionnable qui sera ouverte. La sélection du code ci-dessous est parfaitement interprétée par Code Form Helper.

Code : Tout sélectionner

  TextGadget(#PB_Any, 10, 43, 80, 21, "Nom")
  StringGadget(#Name, 100, 40, 210, 22, "")
  
  ButtonGadget(#Ajouter, 411, 20, 80, 22, "Ajouter")
  ButtonGadget(#Modifier, 412, 47, 80, 22, "Modifier")
  
  ListIconGadget(#Liste, 10, 75, 481, 200, "Nom", 300)
Donc on pourrait imaginer que je fasse de même pour ta demande. Je pourrais aussi essayer de calculer une dimension suffisante pour afficher l'ensemble des gadgets sélectionnés. Mais c'est vrai que paramétrer des #PB_ignore pour créer une fenêtre ...... ça doit être rare :)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Code Form Helper

Message par Backup »

falsam a écrit : En l'absence de cette ligne de création de fenêtre, ce sera une fenêtre par défaut redimensionnable qui sera ouverte. La sélection du code ci-dessous est parfaitement interprétée par Code Form Helper.

Code : Tout sélectionner

  TextGadget(#PB_Any, 10, 43, 80, 21, "Nom")
  StringGadget(#Name, 100, 40, 210, 22, "")
  
  ButtonGadget(#Ajouter, 411, 20, 80, 22, "Ajouter")
  ButtonGadget(#Modifier, 412, 47, 80, 22, "Modifier")
  
  ListIconGadget(#Liste, 10, 75, 481, 200, "Nom", 300)

moi j'aurai mis une alerte, concernant le manque de fenetre dans la selection :)

car le fait de recreer une fenetre , peut induire en erreur .....
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

Dobro a écrit :moi j'aurai mis une alerte, concernant le manque de fenetre dans la selection :)
C'est possible tout en sachant que cette fenêtre ne sera pas généré dans le code final.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Code Form Helper

Message par Backup »

oui mais imagine , tu selectionnes que les gadgets sans la fenêtre

ton soft, génère une fenêtre par defaut

tu deplaces tes gadgets pour les repositionner , tu sauves

et lorsque tu relance ton soft , c'est la vraie fenetre qui prends le relais , et là , tout ton boulot de placement foire ! ;)

alors qu'avec une alerte, le mec , refait sa selection (incluant openwindow()), et la les gadgets sont dans leur vrais contexte :)


deja que je maudit, les autocompletion de boucle For-next , while-wend de japbe :lol: (debrayable heureusement)

j'aime pas les trucs trop automatique
Dernière modification par Backup le lun. 21/oct./2013 10:36, modifié 3 fois.
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Code Form Helper

Message par Ar-S »

Vous avez raison, j'ai dérivé de l'esprit "édition" à celui de "création" :wink:
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Code Form Helper

Message par blendman »

Dobro a écrit : enfin ça creer une fenetre qui n'apparait pas ...
Comme ça marche :

Code : Tout sélectionner

If OpenWindow(1,#PB_Ignore,#PB_Ignore,#PB_Ignore,#PB_Ignore,"test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Maximize)

   
  EndIf
  
  Repeat
    
    Event = WaitWindowEvent()
    
  Until Event = #PB_Event_CloseWindow
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Code Form Helper

Message par Backup »

blendman a écrit :
Comme ça marche :

Code : Tout sélectionner

If OpenWindow(1,#PB_Ignore,#PB_Ignore,#PB_Ignore,#PB_Ignore,"test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Maximize)
normale , lorsque tu utilises #PB_Window_Maximize tu forces la taille de la fenetre
et lorsque tu utilises #PB_Window_ScreenCentered tu forces sont placement !

le but n'etait pas de demontrer qu'on pouvait faire sans les coordonées ....
le but etait de dire que l'utilisation de #PB_Ignore dans la creation d'une fenetre n'etait pas un choix indispensable

meme si tu montre le seul cas ou ça peut se produire ... (donc falsam devra tenir compte )
c'est quand meme pas courant comme utilisation ...

tu demontres au contraire que la présence de #PB_Ignore dans openwindow() est dans ce cas un "dummy"
on pourrai tout aussi bien le remplacer par #si_ma_tante_en_avait ;)


dans un cas comme ça , moi j'en tiendrai meme pas compte du #PB_Ignore (ha bah ça tombe bien il porte bien son nom :lol: )
Avatar de l’utilisateur
falsam
Messages : 7321
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Code Form Helper

Message par falsam »

Code : Tout sélectionner

If OpenWindow(1,#PB_Ignore,#PB_Ignore,#PB_Ignore,#PB_Ignore,"test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Maximize)
Effectivement Blendman, ce code pourrait exister dans le cadre par exemple d'une application sous Windows8 en full-screen, ce qui est souvent le cas.

Je suppose que l'ensemble des paramètres x,y,width et height sont sont égaux à #PB_Ignore?
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Code Form Helper

Message par Backup »

falsam a écrit :

Code : Tout sélectionner

If OpenWindow(1,#PB_Ignore,#PB_Ignore,#PB_Ignore,#PB_Ignore,"test", #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Maximize)
@Falsam
meme avec des coordonnées ....

en fait tu dois faire une condition , qui dit que si l'option #PB_Window_ScreenCentered est utilisé ,
tu Grises , les champs concernant x,y de l'edition de la fenetre ... (edition impossible de la position de la fenetre)

et si l'option #PB_Window_Maximize est présent, alors ce sont les parametres de taille qu'il te faut Griser .... (edition de taille impossible ) :)
Répondre