FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Détection connexion internet
par JL35 Hier à 22:59

» Le parcours du cavalier sur un échiquier 8 x 8
par pascal10000 Dim 23 Juil 2017 - 13:26

» Casse-tête : Echanger les positions des cavaliers
par papydall Sam 22 Juil 2017 - 19:42

» Compilateur FBPano
par jean_debord Sam 22 Juil 2017 - 10:54

» demande pour recuperer un text speciale
par pascal10000 Ven 21 Juil 2017 - 22:04

» KGF_dll - nouvelles versions
par Klaus Ven 21 Juil 2017 - 14:29

» Amélioration de la commande HINT
par papydall Mer 19 Juil 2017 - 3:30

» TEST SUR SHAPE
par papydall Mer 19 Juil 2017 - 1:17

» Un challenge à relever
par papydall Mar 18 Juil 2017 - 21:25

» Astuce : Indenter plusieurs lignes de code à la fois
par papydall Mar 18 Juil 2017 - 1:32

» Suggestion pour le forum
par papydall Lun 17 Juil 2017 - 20:28

» Truver les handles des onglets de Panoramic Editor
par Klaus Lun 17 Juil 2017 - 18:20

» Synedit_Editor - nouvelles versions
par Klaus Lun 17 Juil 2017 - 13:46

» Détermine si oui ou non un objet est PARENT d'un autre objet
par Klaus Dim 16 Juil 2017 - 11:58

» Une autre façon de terminer une application.
par papydall Dim 16 Juil 2017 - 3:53

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juillet 2017
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
31      
CalendrierCalendrier

Partagez | 
 

 Nouveau pseudo-objet TAB utilisable par #INCLUDE

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : 1, 2, 3  Suivant
AuteurMessage
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 1:40

J'ai fait un pseudo-objet TAB permettant de créer une "page" avec des onglets. Plusieurs objets de ce type peuvent co-habiter, chaque objet peu recevoir jusqu'à 20 onglets, et on peut affecter des objets Panoramic à chaque onglet. Les onglets sont cliquables et affichent les objets Panoramic correspondants.

Ce module est réalisé entièrement en Panoramic, sur le modèle des GLIST, et est utilisable très simplement par #INCLUDE. Une documentation complète et un programme de démo sont joints à la distribution.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 10:04

Bravo Klaus !!! t'es le king

Voila une nouvelle fonctionnalité qui manquait vraiment !!
Super boulot !

Une petite précision pour ceux qui veulent s'y atteler : cela fonctionne uniquement sur la version 0.9.20i2 du 30 juillet.

Klaus, un petit détail...
Dans tab.bas à la ligne 159, le message d'erreur n'est pas correct... tu rêves des GLIST maintenant ? Smile

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 10:46

Merci, ça me va droit au coeur !

J'ai corrigé la référence à GLIST - un oubli après un copier-coller. Il est vrai que pendant un moment, je "pensais" GLIST...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 11:08

Nouvelle fonction pour les objets TAB: Tab_select permet de sélectioner par programme un onglet d'un objet TAB comme si l'on avait cliqué dessus. Cela manquait...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 11:16

Regarde si avec ce bout de code tu pourrais pas faire quelque chose :
Je pense que cela te simplifierai la vie...

Code:

label TAB_SearchParam
dim TAB_par$(10,1)


dim TAB_params$,TAB_i%,TAB_j%,TAB_error_mode%,TAB_err%
dim i,indice


TAB_params$ = "Create|N=20|H=200|W=400|T=40|L=90|O=5|"
TAB_error_mode%=1
gosub TAB_SearchParam

if TAB_err%=0
  print TAB_params$
  print "  fonction    :";TAB_par$(0,0)
  print "  nb paramètres:";TAB_par$(0,1)
  for i=1 to val(TAB_par$(0,1))
    print "  parametre n°:";i;"=";TAB_par$(i,0);" valeur:";val(TAB_par$(i,1))
  next i
end_if

end


TAB_SearchParam:
  for TAB_i%=0 to 10:TAB_par$(TAB_i%,0)="":TAB_par$(TAB_i%,1)="":next TAB_i%
  TAB_err%=0
  TAB_par$(0,1)="0"
  for TAB_i%=1 to len(TAB_params$)
    if mid$(TAB_params$,TAB_i%,1)="|"
      TAB_par$(0,1)=str$(val(TAB_par$(0,1))+1)
      TAB_j%=0
      if numeric(TAB_par$(val(TAB_par$(0,1))-1,1))=0
        TAB_params$ = "TAB: valeur non numerique pour paramètre"+chr$(10)+chr$(13)+chr$(34)+TAB_par$(val(TAB_par$(0,1))-1,0)+chr$(34)
        if TAB_error_mode%=1 then TAB_err% = message_error_OK(TAB_params$)
        return
      end_if
    else
      if mid$(TAB_params$,TAB_i%,1)="="
        TAB_j%=1
      else
        TAB_par$(val(TAB_par$(0,1)),TAB_j%)=TAB_par$(val(TAB_par$(0,1)),TAB_j%)+mid$(TAB_params$,TAB_i%,1)
      end_if
    end_if
  next TAB_i%
  if RIGHT$(TAB_params$,1)="|"
    TAB_par$(0,1)=str$(val(TAB_par$(0,1))-1)
  end_if

return



bon il manque quelques tests pour savoir si les valeurs sont numeriques... mais l'idée est là...

Edit : j'ai rajouté quelques tests...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 11:47

Jolie, cette analyse avec répartition caractère par caractère pour remplir le tableau. Je prends et vais réfléchir à son intégration.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 11:58

Je pense que cela servira par la suite et cela te simplifiera ta série de if imbriqué...

L'autre avantage, c'est que les paramètres peuvent être écrits dans n'importe quel ordre, du moment que derrière, l'analyse se fait avec une boucle for et un select/case.

Un truc que je viens de m'apercevoir au sujet du 'print'
Avant dans les anciens basics, quand on ecrivait ceci :

print "toto:";toto,"titi";titi

la virgule faisait l'équivalent d'une tabulation... apparemment ce n'est pas le cas dans panoramic...


Dernière édition par Nardo26 le Ven 13 Aoû 2010 - 12:24, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 12:20

Tu as raison. Je l'intégrerai dans TAB et GLIST et l'utiliserai pour d'autres projets. J'avais la tête plongée dans les fonctionnalités au point de ne pas trop me soucier des techniques de réalisation.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 15:29

Dans la même optique:
Vu qu'on ne peut pas faire SELECT/CASE avec des variables de type texte,
on peut également faire de cette manière :
...Si ça peut donner des idées à quelques-un...

Klaus, jette un coup d'oeil sur la procedure TAB_IdentFct.
Je suis sûr qu'il y a bien quelqu'un dans ce forum qui peut optimiser ce truc... (avec un left$() et un instr()... par ex.) Wink

Code:

' --------------- variables déjà déclarées dans TAB.BAS
dim TAB_params$,TAB_i%,TAB_j%,TAB_error_mode%,TAB_err%,TAB_s$

' --------------- variables nécessaire pour TAB_SearchParam
label TAB_SearchParam
dim TAB_par$(10,1)


' --------------- variables nécessaire pour TAB_IdentFct
label TAB_IdentFct
dim TAB_LstFct$,TAB_IdentFct%
TAB_LstFct$="CREATE|MODE|TAB_LABEL|TAB_INSERT|TAB_DELETE|TAB_SELECT|OBJECT_ADD|OBJECT_REMOVE|" : ' tout en majuscule..doit obligatoirement se terminer par '|'





' --------------- variables utilisées pour la démo de TAB_SearchParam
dim i,indice


' TAB_params$ = "Create|N=20|H=200|W=400|T=40|L=90|O=51"
TAB_params$ = "Object_add|N=20|O=1|P=101"

TAB_error_mode%=1

gosub TAB_SearchParam
if TAB_err%=0
  gosub TAB_IdentFct
  if TAB_err%=0
    print TAB_params$
    print
    print "  fonction    :";TAB_par$(0,0);"  ";
    print "  nb paramètres:";TAB_par$(0,1)
    for i=1 to val(TAB_par$(0,1))
      print "  parametre n°";i;": ";TAB_par$(i,0);",  valeur:";val(TAB_par$(i,1))
    next i
    print
    print "-->";
    select TAB_IdentFct%
      case 1: print "gosub vers fonction create"
      case 2: print "gosub vers fonction Mode"
      case 3: print "gosub vers fonction Tab_label"
      case 4: print "gosub vers fonction Tab_insert"
      case 5: print "gosub vers fonction Tab_delete"
      case 6: print "gosub vers fonction Tab_Select"
      case 7: print "gosub vers fonction Object_add"
      case 8: print "gosub vers fonction Object_remove"
    end_select
  end_if

end_if

end

' *********************************************************************
' *                    FIN DU PROGRAMME DE TEST                      *
' *********************************************************************




TAB_SearchParam:
  for TAB_i%=0 to 10:TAB_par$(TAB_i%,0)="":TAB_par$(TAB_i%,1)="":next TAB_i%
  TAB_err%=0
  TAB_par$(0,1)="0"
  for TAB_i%=1 to len(TAB_params$)
    if mid$(TAB_params$,TAB_i%,1)="|"
      TAB_par$(0,1)=str$(val(TAB_par$(0,1))+1)
      TAB_j%=0
      if numeric(TAB_par$(val(TAB_par$(0,1))-1,1))=0
        TAB_params$ = "TAB: Appel fonction "+TAB_par$(0,0)+chr$(10)+chr$(13)
        TAB_params$ = TAB_params$+"valeur non numerique pour paramètre"+chr$(10)+chr$(13)+chr$(34)+TAB_par$(val(TAB_par$(0,1))-1,0)+chr$(34)
        TAB_err%=1
        if TAB_error_mode%=1 then TAB_err% = message_error_OK(TAB_params$)
        return
      end_if
    else
      if mid$(TAB_params$,TAB_i%,1)="="
        TAB_j%=1
      else
        TAB_par$(val(TAB_par$(0,1)),TAB_j%)=TAB_par$(val(TAB_par$(0,1)),TAB_j%)+mid$(TAB_params$,TAB_i%,1)
      end_if
    end_if
  next TAB_i%
  if RIGHT$(TAB_params$,1)="|"
    TAB_par$(0,1)=str$(val(TAB_par$(0,1))-1)
  end_if

return


TAB_IdentFct:
  TAB_s$="": TAB_IdentFct%=0: TAB_j%=1: TAB_err%=0
  for TAB_i%=1 to LEN(TAB_LstFct$)
    if mid$(TAB_LstFct$,TAB_i%,1)="|"
      if  TAB_s$=UPPER$(TAB_par$(0,0))
        TAB_IdentFct%=TAB_j%
        return
      else
        TAB_s$=""
        TAB_j%=TAB_j%+1
      end_if
    else
      TAB_s$=TAB_s$+mid$(TAB_LstFct$,TAB_i%,1)
    end_if
  next TAB_i%
  TAB_params$="TAB: fonction "+TAB_par$(0,0)+" inconnue !"
  if TAB_error_mode%=1 then TAB_err% = message_error_OK(TAB_params$)
  TAB_err%=1
return





Dernière édition par Nardo26 le Ven 13 Aoû 2010 - 16:10, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 16:07

Je regarderai cette fonction.

En attendant, une petite correction dans TAB-SearchParam: la variable TAB_j est utilisée mais pas mis à zéro au début, ce qui plante au deuxième appel car cette variable est utilisée dans TAB.bas:
Code:
TAB_SearchParam:
  for TAB_i%=0 to 10:TAB_par$(TAB_i%,0)="":TAB_par$(TAB_i%,1)="":next TAB_i%
  TAB_par$(0,1)="0" : TAB_j% = 0
  for TAB_i%=1 to len(TAB_params$)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 16:22

Oui en effet, tu as raison...
me suis fait avoir sur ce coup... Embarassed
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 16:26

Qu'est-ce que tu penses de cela:
Code:
label TAB_IdentFct
dim TAB_LstFct$, TAB_params$, TAB_i%,TAB_n%

TAB_LstFct$="CREATE|.......MODE|.........TAB_LABEL|....TAB_INSERT|...TAB_DELETE|...TAB_SELECT|...OBJECT_ADD|...OBJECT_REMOVE|

TAB_params$ = "Object_add|N=t20|O=1|P=101"
gosub TAB_IdentFct
message TAB_params$ + "==>" + str$(TAB_n%)

TAB_params$ = "Object_remove|N=20|O=3|P=17"
gosub TAB_IdentFct
message TAB_params$ + "==>" + str$(TAB_n%)

end

TAB_IdentFct:
' pour le programme réel TAB_par$(0,0) étant chargé:
' TAB_n% = int((instr(TAB_LstFct$,upper$(TAB_par$(0,0)))+13)/14 )
' deux lignes pour la démo:
TAB_i% = instr(TAB_params$,"|")
TAB_n% = int((instr(TAB_LstFct$,upper$(left$(TAB_params$,TAB_i%)))+13)/14 )
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 16:46

Yessss !
Simple(?) et efficace !
Voila un code comme je les aime ! (on se prend la tête entre les mains un petit moment) Wink
Me doutais bien qu'il y avait un moyen de simplifier la chose...
Wink

Tiens ca ma permis de voir qu'il n'y avait pas de quote en fin d'init de TAB_LstFct$ et que cela n'a pas du tout dérangé panoramic....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 17:07

J'ai rajouté le guillemet - bizarre !

Je suis en train d'adapter TAB pour utiliser tout cela; j'ai fat une petite routine pour récupérer la valeur d'un paramètre:
Code:


TAB_param_value:
    for TAB_p%=1 to val(TAB_par$(0,1))
        if TAB_par$(TAB_p%,0)=TAB_p$
            TAB_p% = val(TAB_par$(TAB_p%,1))
            return
        end_if
    next TAB_p%
    TAB_p% = -1
    return
   

appelé comme suit:

Code:

TAB_p$ = "H"
gosub TAB_param_value
if TAB_p%>-1
' ici, traitement spécifique
end_if

Ca marche très bien !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 18:03

Au fait c'est un peu bourrin la methode 2 lignes... Smile
car si tu dois rajouter des fonctions, faut tout recalculer....

Code:

label TAB_IdentFct,TAB_IdentFct2,Toto
dim TAB_LstFct$, TAB_params$, TAB_i%,TAB_n%,a$

a$="ceci est une chaine qui pose pas de problème
TAB_LstFct$="CREATE|............MODE|..............TAB_LABEL|.........TAB_INSERT|........TAB_DELETE|........OBJECT_UN_PEU_LONG|"

TAB_params$ = "CREATE|N=t20|O=1|P=101"
gosub TAB_IdentFct2
message TAB_params$ + "==>" + str$(TAB_n%)

TAB_params$ = "MODE|N=t20|O=1|P=101"
gosub TAB_IdentFct2
message TAB_params$ + "==>" + str$(TAB_n%)

TAB_params$ = "OBJECT_UN_PEU_LONG|N=t20|O=1|P=101"
gosub TAB_IdentFct2
message TAB_params$ + "==>" + str$(TAB_n%)
end

TAB_IdentFct2:
TAB_i% = instr(TAB_params$,"|")
TAB_n% = int((instr(TAB_LstFct$,upper$(left$(TAB_params$,TAB_i%)))+18)/19)
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 18:09

C'est vrai. Si l'on change la longueur maximale d'un mot-clé, il faut recadrer la liste des fonctions et changer les chiffres dans la ligne avec instr. Un moyen simple de contourner cela, c'est de se donner dès le départ un champ suffisamment large, mettons 30 caractères, et on est libre.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 18:19

Pourquoi pas,
...faut vraiment chercher ou se trouve le coté ludique de la chose: s'amuser à compter les espaces ou les points parce qu'on a rajouter une petite fct... scratch

Au fait ta fct :
Code:

TAB_param_value:
    for TAB_p%=1 to val(TAB_par$(0,1))
        if TAB_par$(TAB_p%,0)=TAB_p$
            TAB_p% = val(TAB_par$(TAB_p%,1))
            return
        end_if
    next TAB_p%
    TAB_p% = -1
    return
A défaut d'avoir la notion de fonction avec valeur de retour. Pourquoi ne pas avoir une variable de retour qui porte le même nom que la procédure ?

je remplacerai bien TAB_p% par TAB_param_value%
Qu'en pense-tu ? (en delphi on ne se pose pas de question, on a bien la variable 'retour')
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 18:33

C'est une idée. On pourrait aussi convenir, en analogie avec Delphi, aux variables TAB_retour%, TAB_retour$ et éventuellement TAB_retour pour les flottants.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 19:54

J'ai remis une version de TAB en ligne avec intégration des routines de scan et interprétation des paramètres. Le code est effectivement plus léger et plus facile à lire.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 22:43

Cest clair... cest plus lisible maintenant et puis surtout cest plus simple pour les developpements futurs...
Smile
jai une touche du clavier qui marche plus et cest franchement penible...surtout pour les commentaires sous pano.... Mad

lidee du TAB_retour est a retenir : cest peut être moins prise de tête...
je suis pas chez moi, je sais, cest pas bien... mais cette discussion est très interressante dans le sens ou si on pouvait avoir; tout en laissant le choix aux personnes de coder comme elles veulent; davoir un minimum de coherence histoire de cy retrouver et de permettre à tous le monde de bien comprendre...
vraiment penible ce clavier !!!
A+ et bonne soiree!

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Ven 13 Aoû 2010 - 22:56

J'ai mis une nouvelle version de TAB en ligne. Une petite amélioration graphique: les onglets non activés sont grisés, l'onglet actif est blanc. C'est plus joli comme ça.

EDIT

J'ai ajouté une nouvelle fonction:
Tab_color|N=20|R=255|G=255|B=0|
Cette fonction permet de choisir la couleur de fond de la page d'affichage ainsi que de l'onglet actif, les onglets non sélectionnés restent grisés. Par défaut, la couleur de fond est blanc (255,255,255).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Sam 14 Aoû 2010 - 1:17

J'ai même fait une découverte avec mon propre logiciel ! Idea

Un objet TAB est représenté par deux objets Panoramic; ce sont les deux picture qui le composent. On peut même affecter un objet TAB à un onglet d'un autre objet TAB ! Pour cela, il suffit de faire la fonction "Object_add" pour le numéro d'objet identifiant l'objet TAB à attacher (on attache ainsi la barre des onglets) et de refaire la fonction avec le même numéro d'objet +1 (on attache ainsi la page d'affichage de l'onglet).

Pour voir l'effet, regarder l'onglet 5 du deuxième objet TAB dans le programme de démo ! C'est pas beau, ça ? Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Nardo26

avatar

Nombre de messages : 2294
Age : 49
Localisation : Valence
Date d'inscription : 02/07/2010

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Sam 14 Aoû 2010 - 16:09

Bonjour !

Avoir plusieurs TAB imbriqués, c'est vraiment une surprise ! Smile
Voila quelque chose de rondement mené....

Juste quelques petites remarques KLAUS :

Dans TAB.BAS:
  • TAB_n% ne fait-il pas double emploi par rapport à TAB_p%?
  • un peu déroutant de réutiliser TAB_par$(a,b) pour récupérer les valeurs RVB Wink mais si cela permet d'économiser des variables...

C'est un peu dommage d'avoir une seule couleur par objet TAB, il aurait été intéressant de pouvoir avoir des onglets de différentes couleurs...mais cela t'obligerai de revoir TAB_change et de créer de nombreuses variables à côté...

Sinon c'est nickel !
Merki KLAUS !

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Dim 15 Aoû 2010 - 0:07

Bonsoir,
Je vois que tu épluches mon code, et ça me plaît.

Pour TAB_n% et TAB_p%: il y a évidemment quelque chose de pas élégant, mais c'est le résultat de l'intégration de la routine TAB_param_value qui retourne sa valeur dans TAB_p%, quelque soit le paramètre recherché. Dans certains cas, le programme était conçu pour utiliser cette valeur dans TAB_n%, dans d'autres à partir de TAB_v%, etc. Je n'ai pas changé l'ensemble du code, j'ai juste supprimé les lignes devenues inutiles et rechargé les variables qui étaient utilisées auparavant. C'est clair que pour un prochain module, la routine TAB_param_value sera utilisée systématiquement et ce quiproquo n'existera plus.

Pour TAB_par$ (dans le cas de la fonction TAB_color), j'ai effectivement utilisé un raccourci sachant que ces cellules étaient déjà traitées, et je m'en suis servi de stockage temporaire.

Un peu plus sur le fond: une couleur par onglet, j'y ai pensé et c'est en cours d'écriture. Il y aura un tableau supplémentaire qui mémorise cela. C'est pour bientôt. En attendant, avec une couleur (qui peut d'ailleurs être changée dynamiquement par appel à la fonction TAB_color), et avec le grisage des onglets inactifs par opposition à l'onglet sélectionné, c'est déjà sympa, non ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10062
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   Dim 15 Aoû 2010 - 2:06

Voilà, c'est prêt:

1. j'ai changé le nom de la fonction TAB_color en Color. Cette fonction détermine la couleur générale d'un objet TAB.

2. j'ai fait une nouvelle fonction TAB_color qui détermine la couleur d'on onglet spécifique d'un objet TAB. Tous les onglets sans couleur spécifique prennent la couleur générale de l'objet TAB.

Dans le programme de démo, voir l'onglet 5 du deuxième objet TAB. C'est celui avec un troisième objet TAB imbriqué. Cet onglet est maintenant bleu, alors que tous les autres restent jaunes !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Nouveau pseudo-objet TAB utilisable par #INCLUDE   

Revenir en haut Aller en bas
 
Nouveau pseudo-objet TAB utilisable par #INCLUDE
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 3Aller à la page : 1, 2, 3  Suivant
 Sujets similaires
-
» Pseudo-objet - Générateur de code
» Que faire quand un membre banni revient avec une nouvelle IP et un nouveau pseudo ?
» Metabe, nouveau pseudo =)
» Ajout d'un nouveau type d'objet dans une form Panoramic !
» Afficher le pseudo du membre dans une phrase de bienvenue

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: