Modifier le curseur d'un textbox

Résolu
aldebarre Messages postés 17 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 4 février 2005 - 10 août 2004 à 16:38
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 - 11 août 2004 à 02:45
est -il possible de changer le curseur d'un textbox (ou richtextbox, ..) (pas celui de la souris celui ds le textbox) c'est a dire qu'a la place d'un trait je voudrait un carré ki clignote sur la lettre

merci d'avance

leo

4 réponses

TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 août 2004 à 02:45
private Declare Function CreateCaret Lib "user32" (ByVal hwnd As Long, _
ByVal hBitmap As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
private Declare Function ShowCaret Lib "user32" (ByVal hwnd As Long) As Long
private Declare Function GetFocus Lib "user32" () As Long

Private Sub Text1_GotFocus()
h& = GetFocus&()
b& = Picture1.Picture 'image de mon nouveau caret (BMP)
Call CreateCaret(h&, b&, 4, 4)
X& = ShowCaret&(h&)
End Sub

Private Sub Text2_GotFocus()
h& = GetFocus&()
'0 pas d'icone , juste un trait
'20 = largeur du carret
'30 = hauteur
Call CreateCaret(h&, 0, 20, 30)
X& = ShowCaret&(h&)
End Sub

::|The S@ib|::
MVP C#.NET
3
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
10 août 2004 à 18:21

  Text1.SetFocus  ' se positionner dans le Text1
  Text1.SelStart = 2  'sélection à partir de la position 2  Text1.SelLength 0 'longueur de la sélection0 (pas de selection)


bon prog

:-p [mailto:cyberscorp2004@msn.com MSN] :big)
0
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
10 août 2004 à 18:25
Juste pour info :

on peut simuler la frappe d'une touche ex :

Sendkeys "{INS}" ' simuler la frappe de la touche Insertion

MSDN :

Syntaxe

SendKeys string[, wait]

La syntaxe de l'instruction SendKeys comprend lesarguments nommés suivants :

Élément Description
string Expression de chaîne indiquant la ou les touches à envoyer.
wait Facultatif. Valeur de typeBoolean indiquant le mode d'attente. Si la valeur est False (valeur par défaut), laprocédure reprend le contrôle dès que les touches sont envoyées. Si la valeur est True, les touches doivent être traitées avant que la procédure ne reprenne le contrôle.

Remarques

Chaque touche est représentée par un ou plusieurs caractères. Pour indiquer un seul caractère du clavier, utilisez le caractère proprement dit. Par exemple, pour représenter la lettre A, affectez à l'argument string la valeur "A". Si vous souhaitez représenter plusieurs caractères, il vous suffit d'ajouter les caractères les uns à la suite des autres. Par exemple, pour représenter les lettres A, B et C, affectez la valeur "ABC" à l'argument string.

L'instruction SendKeys attribue une signification spéciale au signe plus (+), au signe insertion (^), au signe pourcentage (%), au tilde (~) et aux parenthèses ( ). Pour indiquer l'un de ces caractères, placez-le entre accolades ({}). Par exemple, pour indiquer le signe plus, tapez {+}. Bien que les crochets droits ([ ]) n'aient aucune signification particulière dans l'instruction SendKeys, vous devez les placer eux aussi entre accolades. En effet, dans d'autres applications, ils ont une signification spéciale à prendre en compte en cas d'échange dynamique de données (DDE). Pour indiquer des accolades, utilisez les caractères {{} et {}}.

Pour indiquer des caractères qui n'apparaissent pas à l'écran lorsque vous appuyez sur une touche (comme la touche ENTRÉE ou TAB) et des touches qui représentent des actions plutôt que des caractères, employez les codes suivants :

RET.ARR {BACKSPACE}, {BS} ou {BKSP}
ATTN {BREAK}
VERR.MAJ {CAPSLOCK}
SUPPR {DELETE} ou {DEL}
BAS {DOWN}
FIN {END}
ENTRÉE {ENTER}ou ~
ÉCHAP {ESC}
AIDE {HELP}
ORIGINE {HOME}
INSERTION {INSERT} ou {INS}
GAUCHE {LEFT}
VERR.NUM {NUMLOCK}
PG.SUIV {PGDN}
PG.PRÉC {PGUP}
IMPR. ÉCRAN {PRTSC}
DROITE {RIGHT}
ARRÊT.DÉFIL {SCROLLLOCK}
TAB {TAB}
HAUT {UP}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F11}
F12 {F12}
F13 {F13}
F14 {F14}
F15 {F15}
F16 {F16}

Pour indiquer une combinaison de touches avec MAJ, CTRL et ALT, faites précéder le code normal de la touche d'un ou plusieurs codes parmi les suivants :

Touche Code
MAJ +
CTRL ^
ALT %

Pour indiquer que les touches MAJ, CTRL et ALT doivent être maintenues enfoncées pendant que d'autres touches sont utilisées, mettez le code des touches entre parenthèses. Par exemple, pour que la touche MAJ soit maintenue enfoncée pendant que les touches E et C sont utilisées, indiquez "+(EC)". Pour que la touche MAJ soit maintenue enfoncée en même temps que la touche E et que l'utilisateur appuie ensuite sur la touche C sans enfoncer la touche MAJ, utilisez "+EC".

Pour indiquer qu'une touche doit être répétée, employez la forme {touche nombre}, sans oublier d'insérer un espace entre touche et nombre. Par exemple, {LEFT 42} signifie que la touche GAUCHE doit être enfoncée 42 fois et {h 10} qu'il faut appuyer 10 fois sur la touche H.

Note L'instruction SendKeys ne peut envoyer de touches à une application qui n'est pas conçue pour être exécutée dans l'environnement Microsoft Windows. L'instruction Sendkeys ne peut pas non plus envoyer la touche IMP. ÉCRAN {PRTSC} aux applications.

:-p [mailto:cyberscorp2004@msn.com MSN] :big)
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
11 août 2004 à 02:28
Ca répond pas du tout a la question frop01

::|The S@ib|::
MVP C#.NET
0
Rejoignez-nous