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
» KGF_dll - nouvelles versions
par Klaus Aujourd'hui à 13:26

» Compilateur FBPano
par Ouf_ca_passe Aujourd'hui à 12:25

» mise a jour calculatrice
par papydall Aujourd'hui à 2:01

» double guillemets "" dans un EDIT
par Marc Hier à 23:43

» Documentation de KGF
par Klaus Lun 20 Nov 2017 - 22:52

» Zoom sur une portion d'écran
par JL35 Lun 20 Nov 2017 - 21:51

» Recherche d'une expression dans un source
par Marc Lun 20 Nov 2017 - 13:08

» Tracer une grille n'importe où sur l'écran
par JL35 Dim 19 Nov 2017 - 22:14

» TourD Version 2
par Klaus Sam 18 Nov 2017 - 23:58

» La métamatière et le peuple
par JL35 Ven 17 Nov 2017 - 21:18

» Capture d'une zone de l'écran total
par JL35 Ven 17 Nov 2017 - 18:41

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Ven 17 Nov 2017 - 11:49

» qui peut résoudre mon prb
par pascal10000 Jeu 16 Nov 2017 - 17:30

» évènements et objets système : listage automatique
par Jean Claude Jeu 16 Nov 2017 - 11:15

» Panoramic et la reconnaissance vocale.
par papydall Jeu 16 Nov 2017 - 3:45

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   
CalendrierCalendrier

Partagez | 
 

 Chaine de caractères

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Yannick

avatar

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

MessageSujet: Chaine de caractères    Ven 7 Mar 2014 - 15: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 : 10128
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Chaine de caractères    Ven 7 Mar 2014 - 19: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 : 7997
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 7 Mar 2014 - 19: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 : 10128
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Chaine de caractères    Ven 7 Mar 2014 - 20: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 : 7997
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Sam 8 Mar 2014 - 1: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
Voir le sujet précédent Voir le sujet suivant 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: