Page 1 sur 2

Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 29/déc./2009 14:35
par pat
Bonjour à tous,
Je viens d'acheter depuis peu PureBasic version 4.40.
Un Basic intéressant.
Je me suis mis à coder un programme avec le gadget EditorGadet.
Ce gadget a été configuré assez large pour recevoir des fichiers de texte.
Surprise ! Le texte se fait tout au long de la ligne sans retour à la fin du gadget. Se met automatiquement une barre de défilement.
Bien évidemment le fait de saisir le retour à la ligne met le texte directement à gauche mais si le texte continue c'est sur la même ligne.
J'ai déjà configuré ce type de gadget sur un autre Basic (gratuit) et j'ai pu désactivé les barres de défilement, ce qui a pour effet d'éviter le texte continue sur la droite avec une barre de défilement.
Cette option n'existe pas sur PureBasic (vraiment étonnant) et il me semble évident qu'il va falloir que j'aille voir l'API de Windows.
Que PureBasic puisse faire des choses sophistiqués c'est bien, mais les choses de base ne devrait pas être oublié.
Il est évident que cette option qui n'existe pas sur PureBasic est tout à fait indispensable pour cet gadget au lieu d'avoir comme option le fond et la couleur du gadget.
Autre chose :
Je me suis demandé comment faire pour savoir si un fichier existait dans le répertoire et je n'ai pas trouvé d'instruction nommé pour faire cela.
Etonnant pour un Basic qui doit être performant.
J'ai en fin de compte trouvé la ruse : l'instruction FillSize (qui permet de connaître la taille du fichier).
C'est en exploitant le résultat de l'instruction qui j'ai pu venir à mes fins.
En effet, -1 et le fichier n'existe pas, donc j'ai pu exploiter le résultat mais avec une instruction inattendue.
Autre chose :
Je me suis dit comment faire pour changer la forme du curseur de la souris et, surprise, il n'en existe pas.
Encore une fois je suis étonné et pour toutes ces choses l'API de Windows me semble indispensable.
Quelqu'un pourrait-il me donner l'adresse où aller télécharger ce fameux API de Windows (si possible avec la doc en français).

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 29/déc./2009 19:33
par Ar-S
Voilà l'API qui fait du bien pour ton retour à la ligne dans l'editeur:)

Code : Tout sélectionner

Procedure RetourAuto(gadget)
  SendMessage_(GadgetID(gadget), #EM_SETTARGETDEVICE, #Null, 0)
EndProcedure
;---Retour Automatique à la ligne dans un gadget---
;
Enumeration
  #window : #MonGadget
EndEnumeration
;
Procedure OpenWindow_Window()
  If OpenWindow(#window, 268, 496, 227, 121, "retour à la ligne automatique", #PB_Window_SystemMenu|#PB_Window_TitleBar)
    If CreateGadgetList(WindowID(#window))
      EditorGadget(#MonGadget, 1, 1, 226, 240, #PB_Editor_ReadOnly)
      RetourAuto(#MonGadget) ; LA PROCEDURE EST A PLACER APRES LE GADGET CIBLE (et pas avant)
    EndIf
  EndIf
EndProcedure
;
;
OpenWindow_Window()
text$="Le retour chariot désigne originellement le mécanisme physique permettant au chariot d'une machine à écrire de revenir en butée"
text$+"à gauche (soit, du point de vue du rédacteur, de revenir au début de la ligne). Par extension, le terme désigne usuellement le "
text$+"passage à la ligne suivante sur les traitements de texte. Source : wikipedia"
SetGadgetText(#MonGadget,text$)
;
Repeat
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow
      Select EventWindow()
        Case #window
          CloseWindow(#window)
          Break
      EndSelect
  EndSelect
ForEver

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 30/déc./2009 9:57
par gnozal
pat a écrit :Quelqu'un pourrait-il me donner l'adresse où aller télécharger ce fameux API de Windows ?
Il n'y a rien à télécharger, c'est déjà sur ton PC (toutes les DLL de Windows).
L'API Windows est le nom donné par Microsoft à l'interface de programmation (API) sur les systèmes d'exploitation Windows.
pat a écrit :si possible avec la doc en français
La doc (on-line) est ici : http://msdn.microsoft.com/en-us/library ... S.85).aspx
Elle est (et a toujours été) uniquement disponible en anglais.
Il est également possible de télécharger le SDK Windows pour avoir une version locale sur son PC.

Certains sites français proposent une (petite) partie de l'API en français, généralement orientée Visual Basic.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 30/déc./2009 12:32
par pat
Bonjour à tous,
Je vous remercie d'avoir répondu aussi rapidement.
Comme je ne possède pas Internet chez moi, je vais mettre quelque temps avant de mettre en application ce que vous m'avez donné.
Je vais tenir compte de toutes vos remarques judicieuses et plus qu'importantes pour moi.
Je sais maintenant que je peux compter sur vous pour de l'aide.
Encore une fois, UN GRAND MERCI.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 30/déc./2009 15:13
par Ar-S
Comme l'a dit Gnozal, les API sont dejà dans ta machine, donc le code si dessus est déjà utilisable chez toi.
Tu recopies la procédure RetourAuto(gadget) dans tes programmes et tu la lances dans ton openwindow() aprés la création de ton EditorGadget.

Bonnes fêtes de fin d'année

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 05/janv./2010 14:34
par pat
Bonjour à tous,
Je remercie Ar-S pour son code. Cela marche à merveille. Après la création de mon EditorGadget j'ai bien saisie le code SendMessage_(etc.) et cela se fait très bien.
Au sujet du lien pour la doc de l'API, je me retrouve avec le titre ci-dessous :
Windows API Reference
et par type de classement mais j'aimerais pouvoir télécharger la doc complète en version non-Internet (version local sur mon ordi) mais je ne sais pas comment faire, n'étant pas très doué en anglais.
Merci de votre aide que je considère comme précieuse et très appréciée.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 05/janv./2010 14:54
par kernadec
Bonjour Pat
j'utilise http://www.translate.google.com avec le lien du site ca donne ceci:
http://translate.google.com/translate?j ... l=en&tl=fr

Je pense que la traduction de site "www.translate.google.com" est acceptable, enfin pour moi.

Cordialement

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 05/janv./2010 15:35
par pat
Merci Kernadec.
Mais je ne sais toujours pas comment faire pour télécharger la doc.
Même en Français.
En fait je suis intéressé sur la doc de l'API de Windows au sujet :
des gadgets,
des fenêtres,
des boîtes de dialogue,
des fichiers,
de la souris,

C'est pas si terrible que ça.
Mais je pense que certains doivent déjà avoir ça chez eux.
A tout hasard, je donne mon adresse mail pour qui voudrait bien me transmettre par mail la doc listée ci-dessus.
Voici mon adresse mail : gambitdame@gmail.com.
Est-ce que j'en demande trop ? Je ne sais comment faire autrement et un grand merci pour celui qui acceptera de me transmettre à mon adresse mail ce qu'il pourra. Ce sera toujours ça.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mar. 05/janv./2010 17:23
par kernadec
Essaie toujours avec HTTrack
je ne sais pas si microsoft laisse les aspirateurs trainer sur son site...?
http://www.commentcamarche.net/telechar ... rs-de-site

Cordialement

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 06/janv./2010 12:25
par pat
Je remercie Kernadec pour sa réponse.
Le site est très intéressant, mais hélas ne répond pas à ma demande de doc sur l'API de Windows.
En tout cas, je note ce site car il y a des choses intéressantes à télécharger.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 06/janv./2010 12:52
par pat
Bonjour à tous,
J'ai enfin réussi à trouver la page de téléchargement de l'API de Windows.
www.microsoft/download, etc.
Temps de chargement le plus rapide : 54 minutes.
C'est effectivement tout en Anglais.
Nom du fichier : setup.exe
Mais si l'ordi où je vais télécharger est lent cela peut aller jusqu'à près de 24 heures de téléchargement.
Un peut long.
N'y a-t-il pas un moyen de télécharger qu'une partie de la doc de l'API, la partie qui m'intéresse (voir plus haut ?).
Cela m'éviterait un téléchargement fastidieux.
Décidément, pas facile d'avoir la doc qu'on a besoin.
Merci à ceux qui voudront bien m'aider.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : mer. 06/janv./2010 17:57
par cederavic
54 min?! Mais c'est le SDK que tu prends là... enfin tout dépend de ta connexion
Si tu veux juste l'aide, recherche Win32.chm sur le forum ou Google :wink:

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : ven. 08/janv./2010 14:36
par pat
Merci cederavic pour ta réponse.
En fait c'est bien le SDK que je veux car je ne possède pas Internet chez moi et tu comprendras donc aussi pourquoi un téléchargement qui dure (au mieux) 54 minutes (et au plus) 24 heures est difficile à faire dans un cybercafé. En fait je cherche quelqu'un qui voudrait bien m'envoyer le SDK de l'API de Windows mais pas dans sa totalité, seulement les éléments suivants :
1) les gadgets
2) les fenêtes
3) la souris
4) les fichiers

C'est pas sorcier mais on se demande pourquoi il faut tout télécharger chez Microsoft.

J'ai calculé que pour 1,5 Mega par seconde, le fichier devrait faire autour de 4,8 Gigas. Un véritable monstre en volume.

Maintenant on va me dire qu'il serait temps que je m'abonne à un réseau Internet mais vu l'utilisation faible que j'en fais ce serait pour moi une perte d'argent certaine.

Merci à celui (ou celle) qui pourra m'aider dans ma démarche de télécharger l'API de Windows mais seulement les éléments visés plus haut.

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : ven. 08/janv./2010 17:27
par cederavic
Ben non justement, tu n'a pas besoin de tout le SDK, qui lui fait 2 ou 3Go, tu as simplement besoin de l'aide qui fais une trentaine de mo je crois.. Tu as recherche Win32.chm comme je te l'ai conseillé?

Re: Au sujet de EditorGadget et des instructions PureBasic

Publié : sam. 09/janv./2010 10:04
par gnozal
Lien pour Win32.hlp : http://www.borland.com/devsupport/borla ... 52HLP1.ZIP (environ 5.5Mo).
A placer dans %Purebasic%\Help pour avoir accès à l'aide depuis l'IDE ou jaPBe.