comment simuler un enter (return ) par programmation

Posté par lass1250 le 21/5/2009 3:19:58
J'ai regle les autres problemes voir probleme de saisie dans une table


Comment simuler la touche entree (return)par programmation
pour passer pour passer a l'autre ligne sans intervention humaine
voir fonctionnement

Ce que je veux c'est de presenter le code barre au lecteur
et que l'information s'incrive direcetement dans la table aux fur et
a mesure de la presentation du code barre aux lecteurs sans manipulation
du clavier ni de la souris



J'ai essayer envoietouche de toute les manières


// **************** Fonctionnement **************************
1 - ouverture de ma fenetre directement en saisie sur le champs NoTag

2 - via la lecture du port renseigne NoTag qui via une requette alimente
Nom et description

3 - Presentement il faut que je frappe la touche enter pour changer de ligne
Normalement le fait d'alimenter par le code barre devrait suffire
donc comment simuler a la reception de la nouvelle saisie de NoTag
le retour qui a besoin pour continuer son traitement
ou le clic sur le bouton gauche de la souris

si vous avez une idee ,une remarque ,un bout de code ,je suis a bout




J'ai une Table memoire alimenter par le port serie
Ma table contient 3 colonne soit NoTag ,Nom et Description
NoTag est en saisie et les autre en affichage alimente par une requete


Pour assigner à la touche ENTREE l'action de générer une nouvelle ligne
dans la colonne,

- dans le détail de la table, cocher "Retour à la ligne par ENTREE"
- dans le détail de la colonne NoTag,Defilement Retour a la ligne automatique

// ******************** Code ****************************

// ************** Initalisation de Table ****************

DonneFocus(Table.NoTag) // ouverture de la table sur la colonne NoTag


// ***************** initialisation de NoTag *************

SRECEPTION() //fonction qui alimente table.NoTag

// ***************** entree de NoTag **************

// **************** sortie de NoTag ***************

// Initialise la requête
SI PAS HExécuteRequête(REQ_VetementTag,hRequêteDéfaut,NoTag) ALORS
Erreur("Erreur d'initialisation de la requête"+RC+HErreurInfo())
RETOUR
FIN

// lecture du premier enregistrement de la requête
HLitPremier(REQ_VetementTag,NoTag)

NoTag = REQ_VetementTag.NoTag
Prenom = REQ_VetementTag.Prenom
Nom = REQ_VetementTag.NomEmployer
Description = REQ_VetementTag.DescService

HAnnuleDéclaration(REQ_VetementTag)

// permet de d'aller sur la prochaine ligne
EnvoieTouche("{TAB 3 }",Table.NoTag) // meilleur fonctionnement
//EnvoieTouche("{ENTREE }",Table.NoTag)

// reprend la possession de la ligne
RepriseSaisie(NoTag)
//ecranpremier(table.NoTag)//fontinnement identique RepriseSaisie(NoTag)

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=20&topic_id=6203&post_id=24710