1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

DEMANDE Champs Saisie Style éditeur de code !

Discussion dans 'Windev' créé par redha2010, Sept 1, 2018.

  1. redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226
    J"essai de faire une liste déroulante dans une saisie texte
    style éditeur de code

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    le problème dans un champs saisie j'arrive pas a récupérer les cordonnées X, Y
    je crois qu'on peut utiliser les API SendMessage ou SendMessageA sur le handle du champs
    mais j'ai abandonné très vite (mauvaise habitude:) )
    quelqu'un a travailler sur ce sujet ?

    :)
    j'utilise comme liste déroulante un champ Liste lié avec table
    j'ai essaye de positionner la liste par les cordonnées X Y mais dans le champs saisie on trouve la propriété Curseur qui me donne pas les bonne cordonnées
     
    #1 redha2010, Sept 1, 2018
    Dernière édition par un modérateur: Sept 1, 2018
    Tags:
  2. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    j'utilise comme liste déroulante un champ Liste lié avec table
    j'ai essaye de positionner la liste par les cordonnées X Y mais dans le champs saisie on trouve la propriété Curseur qui me donne pas les bonne cordonnées
    Cliquez pour agrandir...
    J'avais mal compris, désolé.
    Le problème avec ta liste , c'est que c'est en réalité un superchamp fait par Pcsoft.
    Difficile d'utiliser les API de windows.

    :)
    Au lieu de faire une liste , il est possible d'utiliser la saisie assisté.
    voir :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    #2 popoy, Sept 1, 2018
    Dernière édition par un modérateur: Sept 1, 2018
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    J'avais mal compris, désolé.
    Le problème avec ta liste , c'est que c'est en réalité un superchamp fait par Pcsoft.
    Difficile d'utiliser les API de windows.

    :)
    Au lieu de faire une liste , il est possible d'utiliser la saisie assisté.
    voir :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Cliquez pour agrandir...
    j'ai pas de probleme coté saisie assistée mais elle s'affiche pas au position voulu

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    j'ai pas de probleme coté saisie assistée mais elle s'affiche pas au position voulu

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Cliquez pour agrandir...
    j'ai pas encore bien compris.
    dans le lien que j'ai mis il y a cet exemple :
    Code (Text):
    SaisieAssistéeParamètre(SAI_Rechercher, saTailleMin, 3)
     
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    j'ai pas encore bien compris.
    dans le lien que j'ai mis il y a cet exemple :
    Code (Text):
    SaisieAssistéeParamètre(SAI_Rechercher, saTailleMin, 3)
    Cliquez pour agrandir...
    cette fonction je crois c'est webdev
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532
    regarde le code de Jean phi sur cette page:

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    cela fait la même chose mais entièrement par programmation et tu peut précisé le nombre de caractères.
     
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226
    je crois que je suis mal expliqué
    dans le champ de saisie je voudrais affiche la liste déroulante ou se trouve le curseur de saisie
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    je crois que je suis mal expliqué
    dans le champ de saisie je voudrais affiche la liste déroulante ou se trouve le curseur de saisie
    Cliquez pour agrandir...
    oui tu es obligé de le faire par programmation.
    a chaque modifications du champ de saisie tu reaffiche la liste (personnellement, je mettrait plutôt un autres champ de saisie que je positionnerait par programmation)
    le code de Jean phi te donne un bon début.
    Je ne voie pas d'autres solutions.
     
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (personnellement, je mettrait plutôt un autres champ de saisie que je positionnerait par programmation)
    Cliquez pour agrandir...
    c'est la ou je veux y arriver,théoriquement c'est facile mais mon problème reste a trouvé les cordonnées exacte
    donc :Comment positionner un champ ( liste ou champ de saisie) dans un champs saisie ?
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532
    ..curseur indique la position du curseur dans le champ.
    il faut plutôt utilisé

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    avec l'option tMultiligne
    après tu gère avec

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    et

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    redha2010 apprécie ceci.
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Bonsoir,

    Le truc est de trouver un moyen de connaitre, d'une manière permanente, la position ligne+colonne du curseur de saisi.

    voici une début de solution

    Dsl j'ai pas trop le temps pour la développer encore plus :(
    J'ai utilisé une table + une fenêtre interne + une liste mais on peut aussi utiliser un simple champs de saisi multi-lignes + une liste

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    PS Pour tester essayer avec le mot "waaq" par exemple

    Bon Dev.
     
    redha2010, suenodesign et joker aiment ça.
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226
    Après avoir relancer la recherche coté API j'ai trouvé le lien :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    maintenant je crois que le reste sera pas trop compliqué
    Merci pour tout vos réponses

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ,

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    et

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    joker apprécie ceci.
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226
    de retour
    pardons pour ce retards j'était sur un autre projet
    aprés avoir résolu le problème des cordonnées , jetait obligeait de connaitre le dernier texte pour la recherche
    je connait pas bcp de fonction qui fait surtout quand on retrouve dans un nouveau ligne

    et j'ai utiliser un tableau de chaine

    Code (Windev):

    sLastStr est une chaîne
    StrLignes est un tableau de chaînes

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (MoiMême,StrLignes)

    t est un tableau de chaînes=ChaîneDécoupe(StrLignes[

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (StrLignes)]," ")
    sLastStr=t[

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (t)]
     
    ensuite en cherche sur sLastStr

    Code (Windev):
    SI sLastStr <>"" ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (REQ_Suggestion,hRequêteDéfaut,sLastStr)
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (LISTE_REQ_Suggestion)
        LISTE_REQ_Suggestion..Visible=Vrai
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sLastStr) > 0 ALORS
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (REQ_Suggestion) > 2 ALORS
        LISTE_REQ_Suggestion..Visible=Vrai
        LISTE_REQ_Suggestion..X = SysCurseurCoordX(MoiMême)-

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sLastStr) * 7
        LISTE_REQ_Suggestion..Y = SysCurseurCoordY(MoiMême)+ 20
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (LISTE_REQ_Suggestion)
    FIN
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (REQ_Suggestion)=0 ALORS
        LISTE_REQ_Suggestion..Visible=Faux
    FIN
    FIN  
    SINON
        LISTE_REQ_Suggestion..Visible=Faux
    FIN
    maintenant si je donne focus a la liste je peut pas continuer a ecrir :)
    et comment ajouter la valeur proposée dans la liste dans le texte
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    maintenant si je donne focus a la liste je peut pas continuer a ecrir :)
    et comment ajouter la valeur proposée dans la liste dans le texte
    Cliquez pour agrandir...
    N'utilise pas de focus mais tu peux jouer avec la partie code Touche Enfoncé de ton champs de saisi

    Regarde ça :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Essai avec mot "waa" pour plus de suggestions
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532
    Chaque ligne de la liste est un entier (indice).
    Tu peux utilisé la

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    ou

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    N'utilise pas de focus mais tu peux jouer avec la partie code Touche Enfoncé de ton champs de saisi

    Regarde ça :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Essai avec mot "waa" pour plus de suggestions
    Cliquez pour agrandir...
    sur un champs de saisie il ya du differences
    sur la touche enfoncé si on test la touche return sa n’empêche pas qu'on se retrouve pas sur un autre ligne

    en c# on met Handled en true pour pouvoir continuer a écrie mémé la liste est en focus
    Code (Text):

             //Code for focusing ListBox Items While Pressing Down and UP Key.
               if (txtControl.KeyCode == Keys.Down)
               {
                   lstControl.Focus();
                   txtControl.Handled = true;
               }
               else if (txtControlKEA.KeyCode == Keys.Up)
               {
                   lstControl.Focus();
                   txtControl.Handled = true;
               }
     

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Chaque ligne de la liste est un entier (indice).
    Tu peux utilisé la

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    ou

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Cliquez pour agrandir...
    surement j'utilise valeurAffichée
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    oui et c'est pour ça que j'ai utilisé un champs table pour pouvoir sauvegarder l'indice de la ligne

    Je suis sur la version 22 mais dans ton cas, avec la 23, tu dois sauvegarder la position ligne de ton curseur dans le cas ou la liste est visible

    J'ai nettoyé un peu le code :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    redha2010 apprécie ceci.
  • redha2010

    redha2010 Active Member

    Inscrit:
    Jan 25, 2018
    Messages:
    230
    J'aime reçus:
    226
    enfin c'est résolu
    merci a

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    du derniere idée pour pouvoir remplacer le Handled du .NET
    il ma falu interompu la touche entre au cours de la séléction pour empecher de retoure a la ligne
    pour cela j'ai ajouter dans l'evenement Touche Appyée (WM_CHAR) et de renvoyer Faux si la touche entrée se presente

    Code (Windev):

    SI LISTE_REQ_Suggestion..Visible ALORS
      SI _EVE.wParam=13 ALORS
        LISTE_REQ_Suggestion..Visible=Faux
        RENVOYER Faux
      FIN
    FIN
     
    hors sujet

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    e suis sur la version 22 mais dans ton cas, avec la 23, tu dois sauvegarde
    Cliquez pour agrandir...
    comment tu sais que j'utilise la version 23 ? :)
     

    Fichiers attachés:

    • WDEdit4.rar
      Taille de fichier:
      474.3 KB
      Affichages:
      29
    suenodesign apprécie ceci.
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    comment tu sais que j'utilise la version 23 ?
    Cliquez pour agrandir...
    En 22 on peut pas savoir les coordonnées ligne du curseur de saisi c'est pour ca que j'ai utilisé une table à la place d'un simple champs de saisi multilignes
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    En 22 on peut pas savoir les coordonnées ligne du curseur de saisi c'est pour ca que j'ai utilisé une table à la place d'un simple champs de saisi multilignes
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    peut tu me donner la propriété ou la fonction en 23 qui renvoie les coordonnées ligne du curseur.
    Je ne l'ai pas trouver dans l'aide.
    Merci d'avance.
     
  • Partager cette page

    Chargement...