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
» Méthode manuelle d'extraction de la racine carrée
par pascal10000 Aujourd'hui à 7:47

» Un catalogue de photos de fleurs, avec KBDD, affichage HTML
par Klaus Hier à 21:12

» Racine carrée d’un nombre par l’algorithme de Héron
par papydall Hier à 20:21

» Mah-Jong anglais
par papydall Hier à 18:43

» [annulé]ON_MOVE n,l ne fonctionne que sur le form 0
par silverman Hier à 16:52

» Ludothèque Panoramic
par jjn4 Hier à 15:42

» Partie fractionnaire d'un flottant
par silverman Hier à 11:28

» Calculus
par Ouf_ca_passe Hier à 9:06

» 6 (en analyse):confusion de variable locale entre SUB et FNC
par Jack Hier à 8:18

» Curseurs personnalisés
par papydall Hier à 5:24

» KGF_dll - nouvelles versions
par Klaus Hier à 0:38

» Exemples de définition et utilisation de Fonctions FNC
par Marc Lun 19 Fév 2018 - 22:50

» Pour coincer la bulle
par JL35 Lun 19 Fév 2018 - 15:31

» Logiciel de soutien en langues.
par Pedro Alvarez Lun 19 Fév 2018 - 15:00

» Version instantanée V 0.9.28i14 du 10/02/2018
par pascal10000 Lun 19 Fév 2018 - 10:58

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Février 2018
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
262728    
CalendrierCalendrier

Partagez | 
 

 Chaine de caractères

Aller en bas 
AuteurMessage
Yannick

avatar

Nombre de messages : 8015
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: Chaine de caractères    Ven 7 Mar 2014 - 13:39

Je me permet d 'ouvrir un sujet ici car je pense qu' il mérite un petit débat...

Sur les fonctions pour les chaines de caractère, il me parait utile 
d' harmoniser les choses au niveau du curseur.

Point d' insertion ou position visuel du curseur

a|

la position est 2 donc avant le deuxième caractère 
on voit le curseur après le caractère 1 
pour récupérer le premier caractère, il faut repositionner le curseur en 1

|a

le souci est que si l'on doit faire une telle opération sur plusieurs caractères successifs, le visuel donne une
impression de scintillement. (ex coloration syntaxique)

Ne serait il pas utile de faire la nuance entre les deux ?
Que les fonctions portent sur le point d' insertion, et, qu ' il y est une fonction qui repositionne le curseur sur ce point 
lorsqu' il y en a besoin ?

Res%=dll_call1("PositionCurseur",pt_insert%)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Chaine de caractères    Ven 7 Mar 2014 - 17:47

Je pense que tu n'as pas bien saisi la notion de "point d'insertion".

Le poiint d'insertion est la position à laquelle va s'insérer le prochain caractère frappé. Ce n'est pas la position à laquelle le dernier caractère a été inséré !

D'autre part, pour être cohérent avec Panoramic; j'ai fait la numérotation des caractères à partir de 1, et non à partir de 0 comme c'est fait en Windows et en Delphi. Cela correspond à la valeur retournée par la fonction INSTR de Panoramic: 1 représente bien le premier caractère, et 0 signifie "non trouvé".

Et en fait, le curseur représente bien le point d'insertion. Quelque soit la position du curseur, si tu frappes un caractère, il viendra bien s'insérer à l'androit où est le curseur, et ce dernier sera placé après le caractère qui vient d'être inséré, de sorte que le caractère suivant se mettra bien à la suite.

Maintenant, je pense que ton message s'adresse aux fonctions de RichEdit et non de gestion de chaînes de caractères. Et il est vrai que si tu utilises SetSelectedRichEditText, il faut bien sélectionner le texte, et pour cela, il faut reculer le curseur.

Alors, je propose une autre solution. Je vais modifier RichEditGetLine de sorte que la fonction retourne la ligne dans laquelle se trouve le curseur, si tu passes 0 comme numéro de ligne ! Tu peux ensuite utiliser la position du curseur comme indexe dans cette chaîne de caractères, et tout cela sans déplacer le curseur, donc sans clignotement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

Nombre de messages : 8015
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 7 Mar 2014 - 17:58

@ klaus,

Je suis tout à fait d' accord avec toi sur le curseur
mais justement, tu as corrigé l' autre jour une différence entre curseur (ce que j' appelle curseur c' est la petite barre qui clignote)
et le point d' insertion qui n' était plus en accord.

Ce que je demande, si c' est possible, c' est que les fonctions portent sur le point d 'insertion sans modifier l' emplacement du curseur.
Et que si l' on veut changer celui ci de place il y est une petite fonction comme indiquée au dessus qui ramène le curseur au point d' insertion voulu.
ceci de façon à éviter le scintillement dont je parlais dans mon post précédent.


Je dois vous quitter quelques heures, je vous laisse méditer la dessus...
A tout à l' heure...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Chaine de caractères    Ven 7 Mar 2014 - 18:20

Ce que j'ai corrigé l'autre jour, c'était un bug. C'était justement parce que je retournais une position du curseur avant l'insertion effective du caractère. Et ainsi, on avait un décalage entre la position que je retournais et la position réelle du curseur. C'est corrugé: je retourne maintenant systématiquement la position réelle du curseur.

Mais j'ai travaillé (eh oui, c'était rapide !). Télécharge la la nouvelle version V2.91. La fonction ReichEditGetLine accepte maintenant la valeur 0 comme numéro de ligne, et elle retourne alors le texte complet de la ligne dans laquelle se trouve le curseur. Ceci combiné à la position du curseur que tu connais, te permet d'extraire la partie qui t'intéresse, sans clignotement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

Nombre de messages : 8015
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 7 Mar 2014 - 23:50

C' est un plus qui me sera utile dès que je vais me pencher sur la touche "Retour Arrière"
qui me pose des problèmes.

Pour la marche avant cela me ferait tout refaire et je ne suis pas sûr du résultat.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Chaine de caractères    

Revenir en haut Aller en bas
 
Chaine de caractères
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Comment afficher une chaine de caractères?
» recherche d'une police de caractère
» afficher les guillemets d'une chaine.
» [Résolu] Word : caractères non imprimables
» MHCA, oui c'est moi... ça fait plus de 5 caractères j'arretes...

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: