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
» Mise à jour PANOMAND
par jean_debord Aujourd'hui à 11:33

» Pourquoi le compilateur stagne
par Jicehel Aujourd'hui à 11:13

» Immortaliser les photos de famille
par jjn4 Hier à 18:29

» Concours de Morpions
par jjn4 Hier à 18:11

» Compilateur FBPano
par jean_debord Hier à 10:12

» Tout est tranquille
par Jean Claude Ven 22 Sep 2017 - 21:41

» Texte en gif animé
par JL35 Ven 22 Sep 2017 - 13:29

» BasicEditor
par Yannick Mer 20 Sep 2017 - 17:17

» Simuler l’appui d'une touche ou combinaison de touches.
par pascal10000 Lun 18 Sep 2017 - 19:30

» Utilisation de HVIEWER pour afficher des images
par papydall Lun 18 Sep 2017 - 17:43

» Panoramic et les gifs animés.
par papydall Lun 18 Sep 2017 - 16:32

» recover source
par pascal10000 Dim 17 Sep 2017 - 14:21

» Recent dans vos menu
par Jean Claude Sam 16 Sep 2017 - 11:41

» Comment centrer un texte 3D.
par pascal10000 Ven 15 Sep 2017 - 20:20

» Carte interface 16 entrées et 16 sorties
par Jicehel Ven 15 Sep 2017 - 16:30

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Septembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier

Partagez | 
 

 Nouveau pseudo-objet GLIST utilisable par #INCLUDE

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

avatar

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

MessageSujet: Re: Nouveau pseudo-objet GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 14:56

Je pense qu'en ajoutant un if supplémentaire, ça marchera:
Code:

TimerGlist:
  if left$(GLIST_params$,6)="Liste "
    message "Prog principal :"+GLIST_params$
    GLIST_params$=""
  end_if
  for i% = 1 to GLIST_n_listes%
    if GLIST_liste_listes%(i%)=ListFiltre% then exit_for
  next i%
  TimerGlist_x% = 0 : TimerGlist_y% = 0
  if mouse_right_down(ListFiltre%+1)=1
    TimerGlist_x% = mouse_x_right_down(ListFiltre%+1)
    TimerGlist_y% = mouse_y_right_down(ListFiltre%+1)
  end_if
  if TimerGlist_x% <> 0
    GLIST_right_click% = GLIST_nr%(i%) + int((TimerGlist_y%+13)/14) - 1
    caption ButtonLoad%,str$(GLIST_right_click%)
  else
    GLIST_right_click% = 0
    caption ButtonLoad%,str$(GLIST_right_click%)
  end_if

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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 15:35

Merci Klaus pour ton aide
Mais je pense que c'est beaucoup plus compliqué que ça:
les mouse_right_xxx fonctionnent sur front donc j'ai modifié la procédure de cette manière :
Code:
TimerGlist:
  timer_off TimerGlist%
  ' ----- évènement clic gauche
  if left$(GLIST_params$,6)="Liste "
    message "Prog principal :"+GLIST_params$
    GLIST_params$=""
  end_if
  ' ----- évènement clic droit
  if mouse_right_down(ListFiltre%+1)=1 : ' mémo du front 'down'
    GLIST_mouse_right% = 1
  else
    if mouse_right_up(ListFiltre%+1)=1  : ' et on attend le front 'haut' pour remettre à zero
      GLIST_mouse_right% = 0
    end_if
  end_if
  if (GLIST_mouse_right% = 1)
    if (GLIST_right_click%=0)
      for i% = 1 to GLIST_n_listes%
        if GLIST_liste_listes%(i%)=ListFiltre% then exit_for
      next i%
      TimerGlist_x% = 0 : TimerGlist_y% = 0
      TimerGlist_x% = mouse_x_right_down(ListFiltre%+1)
      TimerGlist_y% = mouse_y_right_down(ListFiltre%+1)
      if TimerGlist_x% <> 0
        GLIST_right_click% = GLIST_nr%(i%) + int((TimerGlist_y%+13)/14) - 1
        GLIST_params$ = "Selected|" : gosub GLIST_function
        ' pour éviter le scintillement de la liste...
        if val(GLIST_params$)<>GLIST_right_click%
          GLIST_params$ = "Item_select|"+str$(GLIST_right_click%)+"|" : gosub GLIST_function
        end_if
      end_if
    end_if
  else
    GLIST_right_click% = 0
  end_if
  timer_on TimerGlist%
return

Petite cerise sur le gâteau : le clic droit sélectionne l'item.
le truc qui me manque c'est de pouvoir desélectionner l'item au relachement...
on a "Item_select" mais pas "Item_deselect"... je ne sais pas si c'est possible en panoramic... scratch
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nardo26.lescigales.org
JL35



Nombre de messages : 5951
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Nouveau pseudo-objet GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 17:38

Juste une remarque, mais comme je l'ai déjà dit, mon idée est que le ON_CLICK devrait déclencher indifféremment sur le clic gauche ET sur le clic droit, à charge pour l'utilisateur, s'il le désire, de tester dans le s/p appelé si c'est droit ou gauche, avec les outils MOUSE disponibles.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Nardo26

avatar

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

MessageSujet: Re: Nouveau pseudo-objet GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 17:42

D'accord avec toi, cela éviterai de faire de la gymnastique pour pas grand chose...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 17:55

D'accord avec JL35 sur on_click par clic gauche ou droit indifféremment !

Pour Nardo26: en Panoramic, on ne peut PAS dé-sélectionner un item dans une liste. Si c'est nécessaire, je peux par contre le faire dans les GLIST puisque c'est moi qui gère l'affichage visuel de la sélection...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 18:20

C'est possible ?
la dlist ne va pas poser prooblème ?
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 18:48

J'ai relu mon programme: en fait, ça existe déjà ! La fonction s'appelle Item_free ! Tu peux essayer...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 19:57

J'avais vu la fct, j'ai déjà essayé et cela ne marche pas... Sad
mystère...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 20:25

OK, je vais voir ça...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 20:35

désolé de te donner du boulot... Embarassed
je vais regarder moi aussi de mon coté...
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 GLIST utilisable par #INCLUDE   Mar 14 Sep 2010 - 20:40

Bon, j'ai regardé la fonction Item_free. Elle est accessible dans le programme de démo par un bouton. Il suffit de cliquer sur une des listes -> cela sélectionne la ligne correspondante dans les 3 listes. Le bouton dé-sélectionne alors les enregistrements. Bon, dans la version distribuée, il y a un bug avec les listes associées: il s'arrête après la première liste (honte sur moi). Je l'ai corrigé, et la nouvelle version est en ligne (un apostrophe devant un return...).

La fonction Item_free marche. Elle agit sur la dernière GLIST selectionnée par Target_is, et sur toutes les listes associées (s'il y en a...). Essaie avec le programme de démo et compare - je serai curieux du résultat.
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 GLIST utilisable par #INCLUDE   Mar 21 Sep 2010 - 7:46

Bonjour Klaus,
Après une breve interruption Smile
J'ai changé de PC (un portable sous Win 7 avec 4Go de RAM) ca va moins ramer maintenant ! sunny

Je me suis remis sur mon programme de filtrage:

Lorsque j'utilise les commandes 'item_write' et 'item_free', celles-ci provoquent un réaffichage complet de la Glist.
ce qui provoque un clignotement désagréable...
il n'y a pas moyen de faire le réaffichage que de l'item concerné (si actuellement visible dans la Glist bien sur) ?
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 GLIST utilisable par #INCLUDE   Mar 21 Sep 2010 - 19:17

Difficile. Je vais regarder cela. En fait, la ligne sélectionnée est écrite par la commande print dans le picture simulant la liste. Réécrire par-dessus provoque des résultats bizarrres. C'est la raison pour laquelle je réaffiche la liste à chaque modification.

Je suis en train d'intégrer la scroll-bar "maison" dans GLIST - gros morceau car il faut pouvoir tenir compte de plusieurs GLIST simultanés et qui peuvent en plus être synchronisées - ça progresse.
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 GLIST utilisable par #INCLUDE   Mer 22 Sep 2010 - 17:32

Hello Klaus,

Suite à un exemple que j'ai voulu donner à papyx, je me suis dis que je me prenais la tête pour changer un attribut de couleur pour un item donné.

Que penses-tu de ceci :
Code:

'=============== changer l'attribut d'un enregistrement =======================================
' Syntaxe : GLIST_params$="Item_attribut|12|n°attribut"
GLIST_item_attribut:

' on recupère l'indice de l'item
GLIST_s$ = right$(GLIST_params$,len(GLIST_params$)-14)
GLIST_i% = instr(GLIST_s$,"|")
if GLIST_i%=0
    GLIST_params$ = "GLIST: parametres Item_attribut invalides"
    if GLIST_error_mode%=1 then GLIST_err% = message_error_OK(GLIST_params$)
    return
end_if
GLIST_v$ = left$(GLIST_s$,GLIST_i%-1)
if numeric(GLIST_v$)=0
    GLIST_params$ = "GLIST: Item_attribut, valeur numérique attendue"
    if GLIST_error_mode%=1 then GLIST_err% = message_error_OK(GLIST_params$)
    return
end_if
GLIST_v% = val(GLIST_v$)
' puis son attribut
GLIST_s$ = mid$(GLIST_s$,GLIST_i%+1,len(GLIST_s$)-GLIST_i%)
GLIST_i% = instr(GLIST_s$,"|")
if GLIST_i%=0
    GLIST_params$ = "GLIST: parametres Item_attribut invalides"
'    if GLIST_error_mode%=1 then GLIST_err% = message_error_OK(GLIST_params$)
    if GLIST_error_mode%=1 then GLIST_err% = message_error_OK(GLIST_s$)
    return
end_if
GLIST_s$ = left$(GLIST_s$,GLIST_i%-1)
if numeric(GLIST_s$)=0
    GLIST_params$ = "GLIST: Item_attribut, valeur numérique attendue"
    if GLIST_error_mode%=1 then GLIST_err% = message_error_OK(GLIST_params$)
    return
end_if
GLIST_v$=item_read$(GLIST_numero_objet%,GLIST_v%)
GLIST_i%= instr(GLIST_v$,"|")
if GLIST_i% <> 0
  GLIST_v$=mid$(GLIST_v$,GLIST_i%+2,len(GLIST_v$)-GLIST_i%)
end_if

item_delete GLIST_numero_objet%,GLIST_v%
item_insert GLIST_numero_objet%,GLIST_v%,GLIST_s$+"|["+GLIST_v$+"]"
if GLIST_v%<GLIST_nr%(GLIST_index%)+GLIST_lignes_affichage%(GLIST_index%) then gosub GLIST_changea
return

Ce qui est gênant c'est que l'attribut de couleur est dans le texte de l'item.
Il faudrait peut être modifier Item_read de manière à ne pas avoir les codes d'attributs.
en gros au lieu de retourner "2|[Texte de l'item]" cette commande retournerai "Texte de l'item"

C'est un premier jet : il manque un test pour savoir si l'attribut existe...
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 GLIST utilisable par #INCLUDE   Jeu 23 Sep 2010 - 2:20

Je regarderai ta suggestion dès qued j'aurai fini l'intégration de la scroll_bar "maison".

pour le moment, ni item_read ni item_add gèrent cela - tout est laissé à la charge de l'utilisateur dans la construction de son string. Si déjà on veut gérer l'identifiant de l'attribut, il faut aussi gérer la position d'application qui se situe entre les [...], ni devant, ni derrière...
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 GLIST utilisable par #INCLUDE   

Revenir en haut Aller en bas
 
Nouveau pseudo-objet GLIST utilisable par #INCLUDE
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 2 sur 2Aller à la page : Précédent  1, 2
 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: