Forum Liberty Basic France

Général » Graphicbox graphicbox indicé
Le 21/11/2017 à 17h23

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Bonjour à tous,
Est-il possible de d'avoir plusieurs graphicbox avec un indice.
Par exemple: graphicbox(x) de manière à ce que l'on puisse par une boucle for/next
changer de couleur de tous graphicbox?
Merci.
____________________
Castel

   
Le 21/11/2017 à 19h50

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Tout ce qui est déclaré avant l'open ne peut être modifié qu'avec une fermeture-réouverture.
Mais on peut déclarer plusieurs graphicbox, et avec la procédure suivante en changer les attributs dans une boucle en choisissant des noms d'extension du genre:
graphicbox #w.gr1
graphicbox #w.gr2
graphicbox #w.gr3
Code VB :
 
For a=1 to 3
   handl$=#w.gr"+ str$(a)
   #handl$, "fill blue. '//les trois graphicbox seront bleues
next a
 

Si tu mets les couleurs dans un tableau$ ou dans une chaîne tu peut mettre des couleurs différentes dans chaque graphicbox en pointant sur les couleurs avec la variable de boucle
____________________
Roro

   
Le 22/11/2017 à 07h57

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Super, Je vais l'utiliser.
Merci beaucoup
____________________
Castel

   
Le 28/12/2017 à 14h12

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Grace à cette information, j'ai pu faire ce petit programme. Il est trop long (grand, volumineux) pour ce qu'il fait ! Je ne vois pas comment le faire plus court.
Et il n'apparait pas !
____________________
Castel

   
Le 28/12/2017 à 14h13

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Et maintenant il apparaît, c'est maâagik

Il est là -->: bhdo.zip
____________________
Castel

   
Le 28/12/2017 à 18h50

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Mais...mais...--> #vart1$, "when leftButtonDown [sq" + str$(a) + str$(b) + "]"
Toi t'a peur de rien ..!!
____________________
Roro

   
Le 31/12/2017 à 09h37

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Hello dominical !

La construction de la chaîne directement dans l'instruction ? ca devrait marcher quand même, je me souviens avoir fait de même lorsque je voulais créer mes combobox à la volée : création impossible par ce biais, mais l'utilisation des combos existantes était possible. C'est juste un peu plus compliqué à débuguer car il y a plus de caractères cabalistiques qui perturbent le regard.

Pour l'équivalent de la fonction dechex$ en Just Basic, cela ne devrait pas être sorcier d'en créer l'équivalent en quelques lignes, je regarde vite fait.

A+
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 31/12/2017 à 10h57

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Voilà qui devrait faire le job :
Code VB :
 
    '**** équivalent DECHEX$ en Just Basic
    hexa$=""
    symboles$="0123456789ABCDEF"
 
    'dividende = le nombre à diviser
    'diviseur
    'quotient =  le résultat de la division

    dividende=tot1
 
    fin=0
    while fin=0
        quotient=int(dividende/16)
        reste=dividende mod 16
        hexa$=mid$(symboles$,reste+1,1)+hexa$
        dividende=quotient
        if quotient<16 then fin=1
    wend
    hexa$=mid$(symboles$,quotient+1,1)+hexa$
    '**** fin équivalent DECHEX$ en Just Basic

    v$=hexa$
 

Pour insérer ce bloc :
  • dans le listing BHDO rechercher la ligne v$ = dechex$(tot1)... (il n'y en a qu'une)
  • la mettre en commentaire
  • coller le code juste en dessous
  • ne pas oublier le v$=hexa$ à la fin du bloc

et normalement BHDO devrait parler Just Basic :hi



Edité par Christophe Le 31/12/2017 à 10h59
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 31/12/2017 à 11h26

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Et aussi une variante pour afficher en bibi-binaire (autre visualisation de l'hexadécimal, mis au point par un certain Lapointe, dit "Bobby", chanteur de son état, et... chercheur) :

Code VB :
 
 
    '**** équivalent DECHEX$ en Just Basic
    hexa$=""
    symboles$="HO HA HE HI BO BA BE BI KO KA KE KI DO DA DE DI"
 
    'dividende = le nombre à diviser
    'diviseur
    'quotient =  le résultat de la division

    dividende=tot1
 
    fin=0
    while fin=0
        quotient=int(dividende/16)
        reste=dividende mod 16
        hexa$=word$(symboles$,reste+1)+hexa$
        dividende=quotient
        if quotient<16 then fin=1
    wend
    hexa$=word$(symboles$,quotient+1)+hexa$
    '**** fin équivalent DECHEX$ en Just Basic

    v$=hexa$
 
 


Il faudra modifier la largeur des statictexts main.st2x (passer de 30 à 60 l'avant dernier paramètre) :

Code VB :
 
 
   '............................................Colonne du milieu
    statictext #main.st21, l2$, 305,  95, 60, 15
    statictext #main.st22, l2$, 305, 124, 60, 15
    statictext #main.st23, l2$, 305, 153, 60, 15
    statictext #main.st24, l2$, 305, 182, 60, 15
    statictext #main.st25, l2$, 305, 211, 60, 15
    statictext #main.st26, l2$, 305, 240, 60, 15
    statictext #main.st27, l2$, 305, 269, 60, 15
    statictext #main.st28, l2$, 305, 298, 60, 15
 
 

Voili...
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 01/01/2018 à 09h25

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Bonne année !

Castel:
Il est trop long (grand, volumineux) pour ce qu'il fait ! Je ne vois pas comment le faire plus court.


Clair, concis, carré, pour ne pas dire exemplaire. Faire plus court, à priori il n'y a pas. Il faudrait choisir radicalement un autre chemin : par exemple détecter la position de la souris au moment du clic, et en déduire le carré concerné, il n'y a plus besoin de gérer 64 graphicboxs et leur sous-programme.

mais si le but était d'apprendre à manipuler les graphicboxs, alors... chapeau !
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 01/01/2018 à 21h13

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Bonne Année Christophe
Merci
Je n’ai pas encore adapté pour JB, car je suis en train d’etoffer Ce programme avec un bouton pour mémoriser la matrice à tout moment et de pouvoir la rappeler quand on veut.
Une seule mémoire donc.
Merci pour ton commentaire, tous les exercices (programmes) que je fais, Cela me permet de maintenir mon esprit alerte. Et les partager ...
____________________
Castel

   
Le 02/01/2018 à 12h37

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Pour sauvegarder le plus simple est de mettre les données dans un fichier .txt (dont tu peux changer l'extension pour faire "style")
ça va te faire travailler les fichiers.
C'est sûr que les 64 graphicbox il fallait oser...! Tu va nous faire exploser l'interpréteur. :)
____________________
Roro

   
Le 03/01/2018 à 18h06

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
C'est sûr qu'à la base, le graphicbox est prévu pour y dessiner du graphique, c'est plus un conteneur qu'un élément graphique de base, même si on vient de constater qu'il est tout à fait possible d'en arranger 64 en une matrice fonctionnelle.

Questions forcément bonnes puisque je n'ai pas trouvé la réponse :
  • combien de graphicbox peut-on dessiner dans une fenêtre, et utiliser dans un programme ?
  • il m'avait semblé, et je n'arrive pas à retrouver où je l'ai lu, qu'on n'avait droit qu'à cent combobox simultanément définies. A-t-on une infinité d'objets à notre disposition ( = simplement limitée par les possibilités de l'ordi qui fait tourner le programme) ?

Pour l'adaptation en Just Basic, tant qu'il n'y a pas d'exigence de rapidité d'exécution, il suffit simplement de programmer l'équivalent des fonctions purement Liberty Basic, c'est aussi un petit exercice amusant, donc Castel, ne te tracasse pas pour la compatibilité.
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 04/01/2018 à 14h11

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Bonjour,
Voici les dernières modifications apportées.
Avec le choix de la couleur.
Je n'ai pas utilisé un fichier pour mémoriser, mais un deuxième Array.
Car dans mon prochain exercice, je compte manipuler un fichier text séquentiel.
Cela me prendra un peu de temps pour voir les mécanismes, et de poser des questions au cas ou.
Encore et encore je tente de mettre ce fichier......
Ne pleure pas Janette, il est là ton fichier:
Le voilà--->: BHDO2.zip
Mais la prochaine fois donne le nom parce quand il va commencer a y en avoir beaucoup je risque de confusionner.
____________________
Castel

   
Le 04/01/2018 à 15h13

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
(chut ! faut pas qu'ils entendent^^
Tenter de mettre ce fichier... :
  • "mon profil", "gestion des fichiers","ajouter un fichier" et naviguer sur le disque jusqu’au fichier désiré, clic sur "ouvrir" : le téléchargement commence.
  • téléchargement terminé : sous la vignette du fichier téléchargé, dans la ligne contenant l'adresse, clic-droit/copier.
  • aller dans le message, clic-droit/coller à l'emplacement désiré, et encadrer par les balises url et /url, chacune entre crochets (deux syntaxes dispo, affichées en laissant la souris sur l'icône représentant la Terre, dans la barre d'outil...)
)

Tiens je t'en mets un exemplaire: BHDO2.zip
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 04/01/2018 à 18h42

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Merci

"chut ! faut pas qu'ils entendent" ... ???
____________________
Castel

   
Le 04/01/2018 à 20h06

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Christophe:
(chut ! faut pas qu'ils entendent^^

Oui, moi aussi...Je:????
____________________
Roro

   
Le 05/01/2018 à 18h27

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Mon côté taquin a encore frappé ;)

Il n'y a pas d'arrière-pensée ou de reproche sous-jacent envers qui que ce soit.

C'était le début d'une petite saynette. Je ne l'ai pas développée parce que ce n'était pas le sujet ...et que je trouvais un malin plaisir à faire travailler votre imaginaire. C'est juste littéraire, aider Castel à se souvenir d'une procédure m'a, le temps d'un flash, rappelé un vieux souvenir scolaire, il y avait moyen de faire un brin de saynette avec ça.

A noter que saynette ne vient pas de scène, même si le point commun est le théatre, et la différence, la durée.

Puisqu'on en est au chapitre des blagues, je suis épaté de voir dans mon post le lien vers le programme de Castel. Je ne critique pas le côté farce, mais on peut se demander comment ce lien est venu là. Roland ?
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 05/01/2018 à 19h42

Libertynaute

Groupe: Membre

Inscrit le: 10/10/2017
Messages: 65
Hello à tous
Je songe à me procurer un pc (portable) afin de pouvoir poster sans avoir besoin d’aide(vu que j’utilise MacBook Air)
____________________
Castel

   
Le 05/01/2018 à 20h27

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 516
Certes je ne connais pas Mac Book Air, mais à priori, changer de machine ne changera pas grand chose, c'est plus une question de pratique du forum.

Peut-être que notre ami Roland, du haut de ses louables intentions, intervient trop. Ou au moins, pourrait-il se signaler lorsqu'il modifie un post, ou demander avant, par un message privé, s'il peut modifier quelque chose (pour placer un lien qu'on n'arrive pas à mettre, par exemple), hein ?
:hi
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Général » Graphicbox graphicbox indicé  

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie