Page 12 sur 19

Re: [AIDE PUREBASIC] Mises à jour.

Publié : mer. 23/mars/2016 11:15
par Marc56
Voila ce que j'ai avec ma carte Nvidia GeForce GT 620 et écran Asus VS247
Windows 10 x64, pilote Nvidia (installé par Windows)
Résolution 1920x1080 @ 96 dpi

Avec le code de la doc
Image

Avec le code de Spock
Image


Code de l'exemple dans Windows XP dans une VM VirtualBox configurée en 1024x768 @ 96dpi (pareil avec autre résolution)
Image

(si ça peut être utile)
:wink:

Re: [AIDE PUREBASIC] Mises à jour.

Publié : mer. 23/mars/2016 14:28
par MLD
Salut a tous

J'ai idem que Spock avec W 10 .64bits

Re: [AIDE PUREBASIC] Mises à jour.

Publié : jeu. 09/juin/2016 16:14
par Mesa
Mise à jour Doc 5.50Beta1:

Téléchargement
http://frazier.wood.free.fr/chm/PureBasic550.rar

Version spécial World3D:
http://frazier.wood.free.fr/chm/W3D/PureBasic.rar

J'ai essayé de résoudre le problème des accents de 2 manières différentes, une pour chaque fichier ci-dessus.
Si vous pouviez télécharger les 2 rar et me dire si le problème est résolu dans les 2 cas svp, merci.

Mesa.

Re: [AIDE PUREBASIC] Mises à jour.

Publié : jeu. 09/juin/2016 16:21
par falsam
Merci Mesa. Testé et pas de souci.

Re: [AIDE PUREBASIC] Mises à jour.

Publié : jeu. 09/juin/2016 18:20
par Micoute
C'est quand même plus agréable à lire.

Re: [AIDE PUREBASIC] Mises à jour.

Publié : ven. 10/juin/2016 8:43
par microdevweb
Merci messa ça à l'air Ok

Re: [AIDE PUREBASIC] Mises à jour.

Publié : ven. 10/juin/2016 18:35
par Ollivier
Bonjour Mesa,

(petite erreur trouvée. Si tu as le temps de vérif)

Doc : FR
Chap : Maths
Fonction : ATan2()
Section : 3 (Valeur de retour)
Phrase : la dernière
<<
Si 'x' et 'y' sont égaux à zéro, alors la commande renvoie zéro.
>>

Bonne bourre à toi !

Re: [AIDE PUREBASIC] Mises à jour.

Publié : ven. 10/juin/2016 18:43
par Ollivier
Une autre

Doc : FR
Chap : Maths
Fonction : ATanH()
Section : 3 (Exemple)
<<
(the golden ratio) >>> (le nombre d'or)
>>

Re: [AIDE PUREBASIC] Mises à jour.

Publié : sam. 02/juil./2016 13:55
par Marc56
Hello,

Étant en train de faire une fonction de changement de fond pour mon programme, je me suis intéressé pour le première fois à la gestion des images transparentes. J'ai donc pas mal lu la doc et suis arrivé à faire ce que je voulais, mais suis tombé sur ce qui semble un oubli dans la doc ?

Dans l'aide (y compris 5.50) l'exemple fourni pour la fonction DrawAlphaImage() n'utilise pas cette fonction :o

C'est voulu ou c'est un oubli ?

J'ai finalement remplacé mes DrawImage pas des DrawAlphaImage et obtenu l'effet désiré :P

:wink:

Re: [AIDE PUREBASIC] Mises à jour.

Publié : lun. 01/août/2016 9:34
par Mesa
MAJ 01/08/2016 V5.50
=======================================
Téléchargement Version spécial World3D:
http://frazier.wood.free.fr/chm/PureBasic550.rar

Maj + quelque coquille et bug syntax corrigé en syntaxe

M.

Re: [AIDE PUREBASIC] Mises à jour.

Publié : ven. 26/août/2016 14:59
par Marc56
Une petite coquille trouvée par hasard dans l'exemple donné pour SetGadgetItemColor()
(présent dans l'aide livrée avec la 5.50 et dans l'aide en ligne)

SetGadgetItemColor(0, @#PB_All, #PB_Gadget_FrontColor, $0000FF, 1)

le @ en trop
Donne le message:

Code : Tout sélectionner

Ligne 8: Constante introuvable: #.
:wink:

Re: [AIDE PUREBASIC] Mises à jour.

Publié : ven. 16/sept./2016 14:10
par Marc56
Sur l'aide FrameGadget() il y a un paragraphe en trop.

[...]
Le numéro d'identification du nouveau gadget.

Créé un gadget qui affiche une liste des dossiers.
Il permet à l'utilisateur de choisir un fichier ou un dossier situé à n'importe quel endroit des disques.

[...]

Le deuxième paragraphe correspond à l'aide de ExplorerTreeGadget()

:wink:

Re: [AIDE PUREBASIC] Mises à jour.

Publié : lun. 03/oct./2016 14:18
par Marc56
Sur UseSQLiteDatabase()

Code : Tout sélectionner

  UseSQLiteDatabase()

  Filename$ = OpenFileRequester("Choisissez le nom d'un fichier", "PureBasic.sqlite", "*.sqlite|*.sqlite", 0)

  If CreateFile(0, Filename$)
    Debug "Fichier de base de donnees cree"
    CloseFile(0)
  EndIf
  
  If OpenDatabase(0, Filename$, "", "")
    Debug "Connecté à PureBasic.sqlite"
    If DatabaseUpdate(0, "CREATE TABLE info (test VARCHAR(255));")
      Debug "Table cree" ; ---> "table créée" (s'accorde avec 'Table')
    EndIf
  EndIf
  ; À ajouter (Puisque les exemples sont des programmes autonomes, autant bien fermer la connexion)
  FinishDatabaseQuery(0) 
PS.
Si le webmaster de http://www.purebasic.com passe par là, ce serait bien de corriger aussi dans l'espace personnel, le bouton

Connection (us) :arrow: Connexion (fr)
(fr: se connecter, mais connexion et déconnexion)
:wink:

Re: [AIDE PUREBASIC] Mises à jour.

Publié : sam. 15/oct./2016 13:31
par Ar-S
Il faudrait indiquer pour la fonction ResizeImage() qu'il n'accepta pas de redimensionner les images au format .ico

Il faudrait mettre un exemple de glisser/déposer pour la fonction de drag & drop pour la fenêtre.
Il faudrait aussi préciser que DragImage() ne fonctionne qu'en interne et qu'il faut donc utiliser DragFile() à la place si on veut balancer une image d'une fenêtre externe sur la fenêtre de l'application.
Voilou.

Re: [AIDE PUREBASIC] Mises à jour.

Publié : lun. 17/oct./2016 16:23
par Mesa
@Tous: Merci pour vos remarques. Je modifie la doc dans la mesure du possible.

@ARS:
Il faudrait indiquer pour la fonction ResizeImage() qu'il n'accepta pas de redimensionner les images au format .ico
C'est bizarre car c'est indiqué dans les remarques en deuxième position.
Il faudrait mettre un exemple de glisser/déposer pour la fonction de drag & drop pour la fenêtre.
Ok, je vais voir
Il faudrait aussi préciser que DragImage() ne fonctionne qu'en interne et qu'il faut donc utiliser DragFile() à la place si on veut balancer une image d'une fenêtre externe sur la fenêtre de l'application.
Chez moi ça fonctionne bien avec MSWord et dans les deux sens. Il semble que vous (collectivement) n'ayez pas vu que EventDropImage() peut utiliser #PB_Any.
Voir ici:
Windows XP32b

Code : Tout sélectionner

;
; ------------------------------------------------------------
;
;   PureBasic - Drag & Drop
;
;    (c) Fantaisie Software
;
; ------------------------------------------------------------
;

#Window = 0

Enumeration    ; Images
  #ImageSource
  #ImageTarget
EndEnumeration

Enumeration    ; Gadgets
  #SourceText
  #SourceImage
  #SourceFiles
  #SourcePrivate
  #TargetText
  #TargetImage
  #TargetFiles
  #TargetPrivate1
  #TargetPrivate2
EndEnumeration



If OpenWindow(#Window, 0, 0, 760, 510, "Drag & Drop", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  
  ; Create some images for the image demonstration
  ; 
  CreateImage(#ImageSource, 136, 136)
  If StartDrawing(ImageOutput(#ImageSource))
    Box(0, 0, 136, 136, $FFFFFF)
    DrawText(5, 5, "Drag this image", $000000, $FFFFFF)        
    For i = 45 To 1 Step -1
      Circle(70, 80, i, Random($FFFFFF))
    Next i        
    
    StopDrawing()
  EndIf  
  
  CreateImage(#ImageTarget, 136, 136)
  If StartDrawing(ImageOutput(#ImageTarget))
    Box(0, 0, 136, 136, $FFFFFF)
    DrawText(5, 5, "Drop images here", $000000, $FFFFFF)
    StopDrawing()
  EndIf  
  
  
  ; Create and fill the source gadgets
  ;
  ListIconGadget(#SourceText,       10, 10, 140, 140, "Drag Text here", 130)   
  ImageGadget(#SourceImage,        160, 10, 140, 140, ImageID(#ImageSource), #PB_Image_Border) 
  ExplorerListGadget(#SourceFiles, 310, 10, 290, 140, GetHomeDirectory(), #PB_Explorer_MultiSelect)
  ListIconGadget(#SourcePrivate,   610, 10, 140, 140, "Drag private stuff here", 260)
  
  AddGadgetItem(#SourceText, -1, "hello world")
  AddGadgetItem(#SourceText, -1, "The quick brown fox jumped over the lazy dog")
  AddGadgetItem(#SourceText, -1, "abcdefg")
  AddGadgetItem(#SourceText, -1, "123456789")
  
  AddGadgetItem(#SourcePrivate, -1, "Private type 1")
  AddGadgetItem(#SourcePrivate, -1, "Private type 2")
  
  
  ; Create the target gadgets
  ;
  ListIconGadget(#TargetText,  10, 160, 140, 140, "Drop Text here", 130)
  ImageGadget(#TargetImage,    160, 160, 140, 140, ImageID(#ImageTarget), #PB_Image_Border) 
  ListIconGadget(#TargetFiles, 310, 160, 140, 140, "Drop Files here", 130)
  ListIconGadget(#TargetPrivate1, 460, 160, 140, 140, "Drop Private Type 1 here", 130)
  ListIconGadget(#TargetPrivate2, 610, 160, 140, 140, "Drop Private Type 2 here", 130)
  
  
  ; Now enable the dropping on the target gadgets
  ;
  EnableGadgetDrop(#TargetText,     #PB_Drop_Text,    #PB_Drag_Copy)
  EnableGadgetDrop(#TargetImage,    #PB_Drop_Image,   #PB_Drag_Copy)
  EnableGadgetDrop(#TargetFiles,    #PB_Drop_Files,   #PB_Drag_Copy)
  EnableGadgetDrop(#TargetPrivate1, #PB_Drop_Private, #PB_Drag_Copy, 1)
  EnableGadgetDrop(#TargetPrivate2, #PB_Drop_Private, #PB_Drag_Copy, 2)
  
  EnableWindowDrop(#Window,#PB_Drop_Image  ,#PB_Drag_Copy)
  ;   #PB_Drop_Text   : Accepte du texte sur cette fenêtre
  ;   #PB_Drop_Image  : Accepte des images sur cette fenêtre
  ;   #PB_Drop_Files  : Accepte des noms de fichiers sur cette fenêtre
  ;   #PB_Drop_Private: Accepte un 'Drag & Drop' interne
  
  Repeat
    Event = WaitWindowEvent()
    
    ; DragStart event on the source gadgets, initiate a drag & drop
    ;
    If Event = #PB_Event_Gadget And EventType() = #PB_EventType_DragStart
      Select EventGadget()
          
        Case #SourceText
          Text$ = GetGadgetItemText(#SourceText, GetGadgetState(#SourceText))
          DragText(Text$)
          
        Case #SourceImage
          DragImage(ImageID(#ImageSource))
          
        Case #SourceFiles
          Files$ = ""       
          For i = 0 To CountGadgetItems(#SourceFiles)-1
            If GetGadgetItemState(#SourceFiles, i) & #PB_Explorer_Selected
              Files$ + GetGadgetText(#SourceFiles) + GetGadgetItemText(#SourceFiles, i) + Chr(10)
            EndIf
          Next i 
          If Files$ <> ""
            DragFiles(Files$)
          EndIf
          
          ; "Private" Drags only work within the program, everything else
          ; also works with other applications (Explorer, Word, etc)
          ;
        Case #SourcePrivate
          If GetGadgetState(#SourcePrivate) = 0
            DragPrivate(1)
          Else
            DragPrivate(2)
          EndIf
          
      EndSelect
      
      ; Drop event on the target gadgets, receive the dropped data
      ;
    ElseIf Event = #PB_Event_GadgetDrop
      Select EventGadget()
          
        Case #TargetText
          AddGadgetItem(#TargetText, -1, EventDropText())
          
        Case #TargetImage
          If EventDropImage(#ImageTarget)
            SetGadgetState(#TargetImage, ImageID(#ImageTarget))
          EndIf
          
        Case #TargetFiles
          Files$ = EventDropFiles()
          Count  = CountString(Files$, Chr(10)) + 1
          For i = 1 To Count
            AddGadgetItem(#TargetFiles, -1, StringField(Files$, i, Chr(10)))
          Next i
          
        Case #TargetPrivate1
          AddGadgetItem(#TargetPrivate1, -1, "Private type 1 dropped")
          
        Case #TargetPrivate2
          AddGadgetItem(#TargetPrivate2, -1, "Private type 2 dropped")
          
      EndSelect
    ElseIf Event = #PB_Event_WindowDrop
      Debug "ok"
      im=EventDropImage(#PB_Any )
      x=WindowMouseX(#Window)
      y=WindowMouseY(#Window)
      StartDrawing(WindowOutput(#Window))
      ;DrawText(x,y,"ok")
      DrawImage(ImageID(im), X, Y ) 
      
      StopDrawing()
      
      
    EndIf
    
  Until Event = #PB_Event_CloseWindow
EndIf

End

M.