EPB

Programmation d'applications complexes
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: EPB

Message par Backup »

venom a écrit :je me suis amusé a compiler une 20taine de codes aléatoire, :) aucun décalage pour ma part V1.24.2 :wink:






@++
merci :)
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: EPB

Message par Ar-S »

Pas trop le temps de venir vous voir en ce moment, j'ai testé vite fait la 1.24.2 (pas testé le convertisseur).
- La fenêtre des greetings centré sur l’écran et sans bordure ça le ferait mieux.
- centrer le titre horizontalement par rapport à la fenêtre
J'essayerai de manière plus apronfondie quand j'aurai plus de temps.
~~~~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: EPB

Message par Backup »

V 1.26
http://michel.dobro.free.fr/download.php

cette version apporte un Outils Viewer de Structure geré par Purebasic
mais surtout , elle va répondre a une demande faite il y a tres longtemps sur les Forums :D

EPB 1.26 gere les Commandes :)
la premiere du genre sera : _Block et _EndBlock
Qézaquo ?

ben dans EPB la ligne de code :

Code : Tout sélectionner

OpenWindow(0, 100, 200, 195, 260, "PureBasic Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
pourra etre ecrite :


_Block
      openwindow (0,
     100,
     200,
     195,
     260,
      "PureBasic Window" ,
      #PB_Window_SystemMenu |
      #PB_Window_MinimizeGadget |
      #PB_Window_MaximizeGadget )
_EndBlock




_Block determine le dbut d'un block de code
et _EndBlock determine la fin du block

dans ce block toute une ligne de code peut etre scindé en plusieurs lignes
les coupures de la ligne de code ainsi séparé , peut intervenir ou bon vous semble :)

_Block et _EndBloc pourront donc servir a Ecrire une ligne de Code en plusieurs ligne pour
la lisibilité :)

Defaut du truc, ça va rendre vos listings utilisable seulement avec EPB ...

exemple de code ainsi modifié :



;
; ------------------------------------------------------------
;
; PureBasic - Window example file
;
; (c) 2001 - Fantaisie Software
;
; ------------------------------------------------------------
;

;
; Open a window, and do some stuff with it...
;
_block
      openwindow (0,
     100,
     200,
     195,
     260,
      "PureBasic Window" ,
      #PB_Window_SystemMenu |
      #PB_Window_MinimizeGadget |
      #PB_Window_MaximizeGadget )
_EndBlock


messagerequester ( "Information" , "Click to move the Window" , 0)
_block
      resizewindow (0,
     200,
     200,
      #PB_Ignore ,
      #PB_Ignore ) ; Move the window to the coordinate 200,200
_EndBlock

messagerequester ( "Information" , "Click to resize the Window" , 0)

_block
      resizewindow (0, #PB_Ignore ,
      #PB_Ignore , 320, 200) ; Resize the window to 320,200
_EndBlock

;
_block ; meme les commentaires peuvent etre scindés
; This is the 'event loop'.
 All the user actions are processed here.
; It's very easy to understand: when an action occurs,
the EventID
; isn't 0 and we just have to see what have happened...;
_EndBlock

Repeat
     Event = waitwindowevent ()
     
      If Event = #PB_Event_CloseWindow ; If the user has pressed on the close button
          Quit = 1
      EndIf
     
Until Quit = 1
End ; All the opened windows are closed automatically by PureBasic



;
; EPb


ps: dans un block tout peut etre scindé , meme les comentaires :)
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: EPB

Message par Ar-S »

Super ! Enorme ! Bravo !
~~~~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
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: EPB

Message par Kwai chang caine »

la premiere du genre sera : _Block et _EndBlock
Qézaquo ?
Les underscores en fait...enfin ils arrivent grace au regne de DOBRO 1er 8)
Merci et il t'auras fallu drolement moins de temps que FRED :D

Si tu inclus la gestion des GIF....je me marie :lol: :lol:
Defaut du truc, ça va rendre vos listings utilisable seulement avec EPB ...
Tu pourrais pallier ce probleme en ajoutant une option "Regeneration du code en PB natif"
Cette fonction remmettrait en code PB les fonctions perso de ton IDE

Comme ça..l'utilisateur pourrait faire ce qu'il veut, coder dans ton IDE qui lui serait plus a son gout
Et cela ne le priverait pas de donner son code à ceux qui utilisent l'IDE natif ou japbe :roll:
L'avantage sans l'inconvenient quoi :D
Et en plus, tu pourrais creer autant de "DOBROSERIES" que tu veux sans avoir peur que les utilisateurs de PB s'eloignent...

Regarde FRED il a créé PB en essayant de s'eloigner le moins possible du C qui est son createur.
Pour cela il faut lui reconnaitre une sacré intelligence 8)

Edit:

J'y pense tu pourrais peut etre meme creer ce que tu voulais aussi je crois depuis des années ???
Les goto/return dans une procedure
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Re: EPB

Message par Chris »

J'ai testé (vite fait) la 1.26.

Pour mon problème de décalage de code, ..... :|

..... CA MARCHE!!! Image
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: EPB

Message par Backup »

V1.26.2
http://michel.dobro.free.fr/download.php


toutes mes confuseries :oops:
cette version corrige un oublie de la gestion des _Block _endblock pour les 64bits

mais j'en ai profité pour ajouter un menu "Deblocker"
(dans le menu "Convert")

qui permet de remettre le listing sans les Blocks
(KCC j'ai eu la meme idée que toi ;) )

ps: c'est la derniere version pour aujourd'hui ;)

@Chris : OOOOOUUUF !


@KCC
J'y pense tu pourrais peut etre meme creer ce que tu voulais aussi je crois depuis des années ???
Les goto/return dans une procedure
non , moi je voulais une boucle for-next avec des variables Flottante

For i.F =A.f to C.f step I.f
next i.f
Avatar de l’utilisateur
venom
Messages : 3128
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: EPB

Message par venom »

En effet sympa ce système de "Bloc" quand tu a une ligne a rallonge :wink: bien jouer 8)








@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
MLD
Messages : 1124
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: EPB

Message par MLD »

Salut Dobro

Nom d'un cocker a poil dur 8O, Il suffit que je m'éloigne quelques jours pour que Dobro ce surpasse :lol:
J'ai fait quelques tests de ta dernière version. Un problème résiste encore. (déja dit) Quand tu compiles un programme et que tu le fermes pour revenir a l'éditeur. Le curseur (d'insertion texte) ou Caret :roll: n'est pas actif a l'endroit ou tu es parti au moment de la compilation,et la ligne de code n'est plus surlignée.
maintenant je verrais ceci lundi.
Bon WE

Michel
Avatar de l’utilisateur
Mindphazer
Messages : 694
Inscription : mer. 24/août/2005 10:42

Re: EPB

Message par Mindphazer »

MLD a écrit : Un problème résiste encore. (déja dit) Quand tu compiles un programme et que tu le fermes pour revenir a l'éditeur. Le curseur (d'insertion texte) ou Caret :roll: n'est pas actif a l'endroit ou tu es parti au moment de la compilation,et la ligne de code n'est plus surlignée.
Pour ma part, je n'ai pas ce problème.
Ou alors, j'ai pas compris :?
Bureau : Win10 64bits
Maison : Macbook Pro M3 16" SSD 512 Go / Ram 24 Go - iPad Pro 32 Go (pour madame) - iPhone 15 Pro Max 256 Go
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: EPB

Message par Backup »

ben oui moi non plus !
d'autant que je sauvegarde la position du curseur avant compile
et que je la restitue apres ... 8O
Avatar de l’utilisateur
MLD
Messages : 1124
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: EPB

Message par MLD »

@ Mindphaser et Dobro

je suis pas de la première jeunesse, mais j'ai des lunettes? Mon PC ne date pas de 14/18 :roll:
Je me répète donc :mrgreen:
Quand je suis dans l'éditeur , et que le curseur est par exemple a la ligne 30 , et que je compile le code par exemple une fenêtre. Celle-ci apparait. je la quitte par la croix.
A ce moment je revient a l'éditeur, mais je n'es plus de curseur ni de ligne surlignée.
Vous yen avoir compris, ou moi être c... :oops:
Si chez vous ce n'est comme ça, je ne comprend rien!
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: EPB

Message par Backup »

MLD a écrit :@ Mindphaser et Dobro

je suis pas de la première jeunesse, mais j'ai des lunettes? Mon PC ne date pas de 14/18 :roll:
Je me répète donc :mrgreen:
Quand je suis dans l'éditeur , et que le curseur est par exemple a la ligne 30 , et que je compile le code par exemple une fenêtre. Celle-ci apparait. je la quitte par la croix.
A ce moment je revient a l'éditeur, mais je n'es plus de curseur ni de ligne surlignée.
Vous yen avoir compris, ou moi être c... :oops:
Si chez vous ce n'est comme ça, je ne comprend rien!
oui personne ne dis que tu raconte des conneries

simplement une video vaut mieux qu'un long discours

regarde ça :

http://www.youtube.com/watch?v=xBtVM3uAblY

je vais voir ce que je peux faire .. mais comme tu le vois , chez moi le Curseur
mis sur la lettre "m" de "Move"

reste a sa place apres compilation et que j'ai quitté le prg :roll:
Avatar de l’utilisateur
MLD
Messages : 1124
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: EPB

Message par MLD »

@Dobro

Vue la viédo. Je suis vert :mrgreen:
J'ai refait les tests. C'est pareil
Sauf si je clique sur l'ascenseur vertical ou quelque part sur la fnêtre, tout revient normal.
Si chez moi le phénomène existe, je pense que chez d'autres aussi. (on recommence comme avec Chris) :roll:
C'est franchement incompréhensible :?:

PS: En faisant Compiler/débugger c'est OK
PS2: a condition que je ferme par le fenêtre du débugger et non pas par la fenêtre produit a la compilation.

Voila le code

Code : Tout sélectionner

Procedure RemoveFromTaskbar(hWnd)
      Protected Area.RECT, hWnd_Parent
      If IsWindow_(hWnd)
         SetWindowLongPtr_(hWnd, #GWL_HWNDPARENT, FindWindow_(0, ""))
      EndIf
EndProcedure



#window = 1

OpenWindow(#window, 100, 100, 300, 170, "Test", #PB_Window_SystemMenu)
RemoveFromTaskbar(WindowID(#window));, 1)

Repeat
      Event = WaitWindowEvent()
      Select Event
         
         
      EndSelect
Until Event = #PB_Event_CloseWindow
PS3: J'ai l'impression que le panel ne reçois pas le focus.
Avatar de l’utilisateur
MLD
Messages : 1124
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: EPB

Message par MLD »

@ Dobro

Je me la mord 8O :mrgreen: :mrgreen:

avec ce code en compilation plus de problème :?: :?:

Code : Tout sélectionner

Procedure Fenetre2()
     If OpenWindow(2, 0, 0, 300, 300, "Fenetre 2", #PB_Window_WindowCentered | #PB_Window_SystemMenu)
       
       Repeat
         Event = WaitWindowEvent()
         
         If EventWindow() = 2 ; On test que l'on travaille bien avec la fenêtre 2
           ; C'est important de filtrer, sinon, si tu clic sur la croix pour femer la fenêtre 1 par exemple, et bien on va fermer la fenêtre 2
            
           Select Event
             Case #PB_Event_CloseWindow
               Quitter = 1
           EndSelect
           
         EndIf
         
       Until Quitter
       
       CloseWindow(2)
       
     EndIf
EndProcedure

Procedure Fenetre1()
     If OpenWindow(1, 0, 0, 400, 400, "Fenetre 1", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
       
       ButtonGadget(1, 0, 0, 400, 25, "Ouvrir fenêtre 2")
       
       Repeat
         Event = WaitWindowEvent()
         
         Select Event
           Case #PB_Event_Gadget
             Select EventGadget()
               Case 1
                 Fenetre2()
             EndSelect
         EndSelect
         
       Until Event = #PB_Event_CloseWindow
       
       CloseWindow(1)
       
     EndIf
EndProcedure
Bon courage
Pour de bon a lundi
Verrouillé