FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Synchroniser deux LISTs Emptypar Jack Aujourd'hui à 9:03

» Un autre pense-bête...
Synchroniser deux LISTs Emptypar Froggy One Jeu 21 Nov 2024 - 14:54

» Récupération du contenu d'une page html.
Synchroniser deux LISTs Emptypar Pedro Sam 16 Nov 2024 - 13:04

» Décompilation
Synchroniser deux LISTs Emptypar JL35 Mar 12 Nov 2024 - 18:57

» Un album photos comme du temps des grands-mères
Synchroniser deux LISTs Emptypar jjn4 Mar 12 Nov 2024 - 16:23

» traitement d'une feuille excel
Synchroniser deux LISTs Emptypar jjn4 Jeu 7 Nov 2024 - 2:52

» Aide-mémoire mensuel
Synchroniser deux LISTs Emptypar jjn4 Lun 4 Nov 2024 - 17:56

» Des incomprèhension avec Timer
Synchroniser deux LISTs Emptypar Klaus Mer 30 Oct 2024 - 17:26

» KGF_dll - nouvelles versions
Synchroniser deux LISTs Emptypar Klaus Mar 29 Oct 2024 - 16:58

» instructions panoramic
Synchroniser deux LISTs Emptypar maelilou Lun 28 Oct 2024 - 18:51

» Figures fractales
Synchroniser deux LISTs Emptypar Marc Ven 25 Oct 2024 - 10:18

» Panoramic et Scanette
Synchroniser deux LISTs Emptypar Yannick Mer 25 Sep 2024 - 20:16

» Editeur d étiquette avec QR évolutif
Synchroniser deux LISTs Emptypar JL35 Lun 23 Sep 2024 - 20:40

» BUG QR Code DelphiZXingQRCode
Synchroniser deux LISTs Emptypar Yannick Dim 22 Sep 2024 - 9:40

» fichier.exe
Synchroniser deux LISTs Emptypar leclode Ven 20 Sep 2024 - 17:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -20%
Drone Dji DJI Mini 4K (EU)
Voir le deal
239 €

 

 Synchroniser deux LISTs

Aller en bas 
2 participants
AuteurMessage
JL35




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

Synchroniser deux LISTs Empty
MessageSujet: Synchroniser deux LISTs   Synchroniser deux LISTs EmptyJeu 20 Oct 2016 - 16:11

J'ai deux LIST parallèles qui doivent être synchronisées, c'est à dire que le déplacement de l'ascenseur de l'une doit entraîner le déplacement en parallèle de l'autre.
Le problème a déjà été soulevé il y a quelques années, sans solution simple à ma connaissance.

En fait mon problème était un peu plus simple, genre éditeur simplifié: un LIST qui contient le contenu d'un fichier texte (donc avec apparition d'ascenseur), et un petit LIST parallèle à gauche, qui contient les numéros de lignes du premier. Si je me déplace avec l'ascenseur, je veux que les numéros de ligne suivent.
C'est faisable en faisant appel à des fonctions de user32.dll, mais comme il n'y a pas d'événement déclenché par le déplacement de l'ascenseur, il faut mettre un Timer pour le surveiller, ce qui est beaucoup plus contraignant.

Par exemple:
Code:
LABEL Quit
DIM i%,f$,pr%,nl%
f$ = "C:\TEXTES\ANNU.txt": ' un  fichier texte quelconque
HEIGHT 0,800: FONT_NAME 0,"Lucida Console": ON_CLOSE 0,Quit
LIST 1: WIDTH 1,35: HEIGHT 1,HEIGHT(0)-40: ' List des numéros de lignes
LIST 2: LEFT 2,WIDTH(1): WIDTH 2,WIDTH(0)-WIDTH(1)-20: HEIGHT 2,HEIGHT(1)
MEMO 3: HIDE 3: WIDTH 3,900
FILE_LOAD 3,f$: FOR i% = 1 TO COUNT(3): ITEM_ADD 2,ITEM_READ$(3,i%): NEXT i%
Hlign(1): nl% = HEIGHT(1)/hlig%-1: ' nombre de lignes affichables dans List 1
pr% = -1: ' 1ère ligne affichée
WHILE 1>0: ' juste pour la démo
    Listelem(2)
    IF prem%<>pr%
        CLEAR 1
        FOR i% = prem% TO prem%+nl%-1: ITEM_ADD 1,RIGHT$("000"+STR$(i%),4): NEXT i%
        pr% = prem%
    END_IF
    PAUSE 200
END_WHILE
END
' ==============================================================================
Quit:
TERMINATE
' ==============================================================================
SUB Listelem(lst%)
' Renvoie dans prem% le rang du 1er élément de lst% affiché dans la fenêtre visible
' du liste (cas des ascenseurs).
IF VARIABLE("prem%") = 0 THEN DIM prem%
DLL_ON "User32"
  prem% = DLL_CALL4("SendMessageA",handle(lst%),398,0,0)
DLL_OFF
prem% = prem%+1: ' les numéros rendus commencent à 0
END_SUB
' ==============================================================================
SUB Hlign(lst%)
' Renvoie dans hlig% la hauteur en pixels d'une ligne du List lst%,
IF VARIABLE("hlig%") = 0 THEN DIM hlig%
DLL_ON "User32"
  hlig% = DLL_CALL4("SendMessageA",handle(lst%),417,0,0)
DLL_OFF
END_SUB
' ==============================================================================

C'est juste un exemple vite fait, et il y a des contraintes. Par exemple il faut que les polices des deux List soient les mêmes et de même taille. Entre autres. Et ce satané Timer.
L'action sur l'ascenseur n'est prise en compte qu'au relâchement de la souris.
Revenir en haut Aller en bas
Klaus

Klaus


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

Synchroniser deux LISTs Empty
MessageSujet: Re: Synchroniser deux LISTs   Synchroniser deux LISTs EmptyJeu 20 Oct 2016 - 17:16

Déjà soulevé sans solution simple ? Alors, regarde mon pseudo-objet GLIST (100 % Panoramic, sans DLL !). Tu peux avoir un nombre quelconque de listes synchronisées (2, 3, ... 7, ...). Un défilelent dans une des listes défile les autres simultanément. Les insertions, les suppressions - tout est géré. Voir sur mon site, rubrique "Panoramic", lien "Pseudo-objet GLIST", ou utiliser le lien suivant (identique):
http://klauspanoramic.comxa.com/versions/GLIST.zip
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

Synchroniser deux LISTs Empty
MessageSujet: Re: Synchroniser deux LISTs   Synchroniser deux LISTs EmptyJeu 20 Oct 2016 - 20:28

Dont acte et mea culpa... je dois perdre un peu la mémoire... Rolling Eyes

Le pire, après vérification, c'est que j'ai bien ton GLIST dans mes archives, depuis sa création, avec son mode d'emploi détaillé (.rtf) mais je ne l'ai encore jamais utilisé...
Bon, eh bien il ne me reste plus qu'à m'y plonger, avec mes remerciements Klaus !
Revenir en haut Aller en bas
Contenu sponsorisé





Synchroniser deux LISTs Empty
MessageSujet: Re: Synchroniser deux LISTs   Synchroniser deux LISTs Empty

Revenir en haut Aller en bas
 
Synchroniser deux LISTs
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Synchronisation de deux PC
» Les deux lignes
» deux petites subs
» Laquelle de deux versions est boguée ?
» Une curiosité à deux points!

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: