Bonjour
J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
differencier ? ou peut on connaire la valeur keychar a partir de Keys.
merci Desveenes Claude
--
anthride
Bonjour
J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
differencier ? ou peut on connaire la valeur keychar a partir de Keys.
merci Desveenes Claude
--
anthride
Bonjour
J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
differencier ? ou peut on connaire la valeur keychar a partir de Keys.
merci Desveenes Claude
--
anthride
Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message de
news:
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" <Anthride@discussions.microsoft.com> a écrit dans le message de
news: 8A5C9E65-C1EB-481C-AEA6-317E358BF8C8@microsoft.com...
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message de
news:
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée . Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
l'evenement QuelTouche pour tester quelle touche est frappée afin de
contourner les methode par defaut du Datagridview. par exemple la touche
ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
Je voudrais que ce controle me serve a changer la touche POINT par la
Touche
VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
numeriques.
Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
si
je suis en CAPSLOCK.
Je voudrais qu'elle soit toujours "VIRGULE".
J'espere que je suis plus clair et lerci de votre aide
Voici le Code de mon Controle :
Imports System
Imports System.Windows.Forms
Public Class DGViewOdeV
Inherits System.Windows.Forms.DataGridView
Event QuelTouche(ByVal wkey As Keys)
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
ByVal Keydata As Keys) As
Boolean
Const WM_KEYDOWN As Integer = &H100
Const WM_SYSKEYDOWN As Integer = &H104
If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
Select Case (Keydata)
Case Keys.Down
' Me.Parent.Text = "DOWN Arrow Captured "
Case Keys.Up
' Me.Parent.Text = "UP Arrow Captured "
Case Keys.Tab
' Me.Parent.Text = "TAB Key Captured "
Case (Keys.Control Or Keys.M)
' Me.Parent.Text = "<CTRL> + M Capturé "
Case (Keys.Alt Or Keys.Z)
' Me.Parent.Text = "<ALT> + Z Capturé"
Case Keys.Enter
' Me.Parent.Text = " TOUCHE ENTER "
Case Keys.Return
' Me.Parent.Text = " TOUCHE RETURNNNNN "
Case Keys.Decimal
If My.Computer.Keyboard.CapsLock Then
MsgBox("CAPS LOCK on")
msg.WParam = CType(Keys.Oemcomma, IntPtr)
' SendKeys.Send("{CAPSLOCK}")
' If My.Computer.Keyboard.CapsLock Then
' MsgBox("CAPS LOCK off 22222222222222222222222")
' End If
Else
MsgBox("CAPS LOCK off")
' Change le Point en Virgulr
msg.WParam = CType(Keys.Oemcomma, IntPtr)
End If
Case Else
' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
End Select
' Me.Parent.Text = Keydata.ToString
RaiseEvent QuelTouche(Keydata)
' Return MyBase.ProcessCmdKey(msg, Keydata)
End If
End Function
End Class
--
anthride
"TroXsA" a écrit :Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message
de
news:
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée .
> Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
> ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
> les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
l'evenement QuelTouche pour tester quelle touche est frappée afin de
contourner les methode par defaut du Datagridview. par exemple la touche
ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
Je voudrais que ce controle me serve a changer la touche POINT par la
Touche
VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
numeriques.
Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
si
je suis en CAPSLOCK.
Je voudrais qu'elle soit toujours "VIRGULE".
J'espere que je suis plus clair et lerci de votre aide
Voici le Code de mon Controle :
Imports System
Imports System.Windows.Forms
Public Class DGViewOdeV
Inherits System.Windows.Forms.DataGridView
Event QuelTouche(ByVal wkey As Keys)
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
ByVal Keydata As Keys) As
Boolean
Const WM_KEYDOWN As Integer = &H100
Const WM_SYSKEYDOWN As Integer = &H104
If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
Select Case (Keydata)
Case Keys.Down
' Me.Parent.Text = "DOWN Arrow Captured "
Case Keys.Up
' Me.Parent.Text = "UP Arrow Captured "
Case Keys.Tab
' Me.Parent.Text = "TAB Key Captured "
Case (Keys.Control Or Keys.M)
' Me.Parent.Text = "<CTRL> + M Capturé "
Case (Keys.Alt Or Keys.Z)
' Me.Parent.Text = "<ALT> + Z Capturé"
Case Keys.Enter
' Me.Parent.Text = " TOUCHE ENTER "
Case Keys.Return
' Me.Parent.Text = " TOUCHE RETURNNNNN "
Case Keys.Decimal
If My.Computer.Keyboard.CapsLock Then
MsgBox("CAPS LOCK on")
msg.WParam = CType(Keys.Oemcomma, IntPtr)
' SendKeys.Send("{CAPSLOCK}")
' If My.Computer.Keyboard.CapsLock Then
' MsgBox("CAPS LOCK off 22222222222222222222222")
' End If
Else
MsgBox("CAPS LOCK off")
' Change le Point en Virgulr
msg.WParam = CType(Keys.Oemcomma, IntPtr)
End If
Case Else
' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
End Select
' Me.Parent.Text = Keydata.ToString
RaiseEvent QuelTouche(Keydata)
' Return MyBase.ProcessCmdKey(msg, Keydata)
End If
End Function
End Class
--
anthride
"TroXsA" a écrit :
Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" <Anthride@discussions.microsoft.com> a écrit dans le message
de
news: 8A5C9E65-C1EB-481C-AEA6-317E358BF8C8@microsoft.com...
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée .
> Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
> ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
> les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
l'evenement QuelTouche pour tester quelle touche est frappée afin de
contourner les methode par defaut du Datagridview. par exemple la touche
ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
Je voudrais que ce controle me serve a changer la touche POINT par la
Touche
VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
numeriques.
Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
si
je suis en CAPSLOCK.
Je voudrais qu'elle soit toujours "VIRGULE".
J'espere que je suis plus clair et lerci de votre aide
Voici le Code de mon Controle :
Imports System
Imports System.Windows.Forms
Public Class DGViewOdeV
Inherits System.Windows.Forms.DataGridView
Event QuelTouche(ByVal wkey As Keys)
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
ByVal Keydata As Keys) As
Boolean
Const WM_KEYDOWN As Integer = &H100
Const WM_SYSKEYDOWN As Integer = &H104
If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
Select Case (Keydata)
Case Keys.Down
' Me.Parent.Text = "DOWN Arrow Captured "
Case Keys.Up
' Me.Parent.Text = "UP Arrow Captured "
Case Keys.Tab
' Me.Parent.Text = "TAB Key Captured "
Case (Keys.Control Or Keys.M)
' Me.Parent.Text = "<CTRL> + M Capturé "
Case (Keys.Alt Or Keys.Z)
' Me.Parent.Text = "<ALT> + Z Capturé"
Case Keys.Enter
' Me.Parent.Text = " TOUCHE ENTER "
Case Keys.Return
' Me.Parent.Text = " TOUCHE RETURNNNNN "
Case Keys.Decimal
If My.Computer.Keyboard.CapsLock Then
MsgBox("CAPS LOCK on")
msg.WParam = CType(Keys.Oemcomma, IntPtr)
' SendKeys.Send("{CAPSLOCK}")
' If My.Computer.Keyboard.CapsLock Then
' MsgBox("CAPS LOCK off 22222222222222222222222")
' End If
Else
MsgBox("CAPS LOCK off")
' Change le Point en Virgulr
msg.WParam = CType(Keys.Oemcomma, IntPtr)
End If
Case Else
' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
End Select
' Me.Parent.Text = Keydata.ToString
RaiseEvent QuelTouche(Keydata)
' Return MyBase.ProcessCmdKey(msg, Keydata)
End If
End Function
End Class
--
anthride
"TroXsA" a écrit :Bonjour,
J'crois pas avoir trop bien compris tout ! :)
il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
@+
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message
de
news:
> Bonjour
>
> J'ai besoin de tester le nom de la touche du clavier qui est tapée .
> Pour
> cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
> Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
> ou
> Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
> ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
> les
> differencier ? ou peut on connaire la valeur keychar a partir de Keys.
> merci Desveenes Claude
>
> --
> anthride
Utiliser une API pour ce genre de chose n'est vraiement pas adapté a mon
gous
il faut utiliser les evenements qui existe deja pour ce genre de chose
Le lien que je tes donné, devrais pourtant correspondre a tes besoin non ?
exemple de code encore, avec l'evenement KeyPress
http://www.troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message de
news:
> J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
> l'evenement QuelTouche pour tester quelle touche est frappée afin de
> contourner les methode par defaut du Datagridview. par exemple la touche
> ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
> Je voudrais que ce controle me serve a changer la touche POINT par la
> Touche
> VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
> numeriques.
> Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
> VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
> si
> je suis en CAPSLOCK.
> Je voudrais qu'elle soit toujours "VIRGULE".
> J'espere que je suis plus clair et lerci de votre aide
>
>
> Voici le Code de mon Controle :
> Imports System
> Imports System.Windows.Forms
>
> Public Class DGViewOdeV
> Inherits System.Windows.Forms.DataGridView
>
> Event QuelTouche(ByVal wkey As Keys)
> Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
> ByVal Keydata As Keys) As
> Boolean
> Const WM_KEYDOWN As Integer = &H100
> Const WM_SYSKEYDOWN As Integer = &H104
>
>
> If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
> Select Case (Keydata)
> Case Keys.Down
> ' Me.Parent.Text = "DOWN Arrow Captured "
> Case Keys.Up
> ' Me.Parent.Text = "UP Arrow Captured "
> Case Keys.Tab
> ' Me.Parent.Text = "TAB Key Captured "
> Case (Keys.Control Or Keys.M)
> ' Me.Parent.Text = "<CTRL> + M Capturé "
> Case (Keys.Alt Or Keys.Z)
> ' Me.Parent.Text = "<ALT> + Z Capturé"
> Case Keys.Enter
> ' Me.Parent.Text = " TOUCHE ENTER "
> Case Keys.Return
> ' Me.Parent.Text = " TOUCHE RETURNNNNN "
> Case Keys.Decimal
> If My.Computer.Keyboard.CapsLock Then
> MsgBox("CAPS LOCK on")
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> ' SendKeys.Send("{CAPSLOCK}")
> ' If My.Computer.Keyboard.CapsLock Then
> ' MsgBox("CAPS LOCK off 22222222222222222222222")
> ' End If
> Else
> MsgBox("CAPS LOCK off")
> ' Change le Point en Virgulr
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> End If
> Case Else
> ' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
> End Select
> ' Me.Parent.Text = Keydata.ToString
>
> RaiseEvent QuelTouche(Keydata)
> ' Return MyBase.ProcessCmdKey(msg, Keydata)
> End If
>
> End Function
>
> End Class
>
>
>
> --
> anthride
>
>
> "TroXsA" a écrit :
>
>> Bonjour,
>>
>> J'crois pas avoir trop bien compris tout ! :)
>> il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
>> http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
>>
>> @+
>>
>> --
>>
>>
>> Cordialement,
>>
>> Site : http://www.troxsa.info
>> Mail : http://cerbermail.com/?rIXgaw9Xsl
>>
>>
>> "Anthride" a écrit dans le message
>> de
>> news:
>> > Bonjour
>> >
>> > J'ai besoin de tester le nom de la touche du clavier qui est tapée .
>> > Pour
>> > cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
>> > Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
>> > ou
>> > Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
>> > ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
>> > les
>> > differencier ? ou peut on connaire la valeur keychar a partir de Keys.
>> > merci Desveenes Claude
>> >
>> > --
>> > anthride
>>
>>
>>
Utiliser une API pour ce genre de chose n'est vraiement pas adapté a mon
gous
il faut utiliser les evenements qui existe deja pour ce genre de chose
Le lien que je tes donné, devrais pourtant correspondre a tes besoin non ?
exemple de code encore, avec l'evenement KeyPress
http://www.troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" <Anthride@discussions.microsoft.com> a écrit dans le message de
news: C8B2F72B-07D8-4E8B-8F64-C7DD83570F55@microsoft.com...
> J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
> l'evenement QuelTouche pour tester quelle touche est frappée afin de
> contourner les methode par defaut du Datagridview. par exemple la touche
> ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
> Je voudrais que ce controle me serve a changer la touche POINT par la
> Touche
> VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
> numeriques.
> Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
> VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
> si
> je suis en CAPSLOCK.
> Je voudrais qu'elle soit toujours "VIRGULE".
> J'espere que je suis plus clair et lerci de votre aide
>
>
> Voici le Code de mon Controle :
> Imports System
> Imports System.Windows.Forms
>
> Public Class DGViewOdeV
> Inherits System.Windows.Forms.DataGridView
>
> Event QuelTouche(ByVal wkey As Keys)
> Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
> ByVal Keydata As Keys) As
> Boolean
> Const WM_KEYDOWN As Integer = &H100
> Const WM_SYSKEYDOWN As Integer = &H104
>
>
> If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
> Select Case (Keydata)
> Case Keys.Down
> ' Me.Parent.Text = "DOWN Arrow Captured "
> Case Keys.Up
> ' Me.Parent.Text = "UP Arrow Captured "
> Case Keys.Tab
> ' Me.Parent.Text = "TAB Key Captured "
> Case (Keys.Control Or Keys.M)
> ' Me.Parent.Text = "<CTRL> + M Capturé "
> Case (Keys.Alt Or Keys.Z)
> ' Me.Parent.Text = "<ALT> + Z Capturé"
> Case Keys.Enter
> ' Me.Parent.Text = " TOUCHE ENTER "
> Case Keys.Return
> ' Me.Parent.Text = " TOUCHE RETURNNNNN "
> Case Keys.Decimal
> If My.Computer.Keyboard.CapsLock Then
> MsgBox("CAPS LOCK on")
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> ' SendKeys.Send("{CAPSLOCK}")
> ' If My.Computer.Keyboard.CapsLock Then
> ' MsgBox("CAPS LOCK off 22222222222222222222222")
> ' End If
> Else
> MsgBox("CAPS LOCK off")
> ' Change le Point en Virgulr
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> End If
> Case Else
> ' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
> End Select
> ' Me.Parent.Text = Keydata.ToString
>
> RaiseEvent QuelTouche(Keydata)
> ' Return MyBase.ProcessCmdKey(msg, Keydata)
> End If
>
> End Function
>
> End Class
>
>
>
> --
> anthride
>
>
> "TroXsA" a écrit :
>
>> Bonjour,
>>
>> J'crois pas avoir trop bien compris tout ! :)
>> il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
>> http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
>>
>> @+
>>
>> --
>>
>>
>> Cordialement,
>>
>> Site : http://www.troxsa.info
>> Mail : http://cerbermail.com/?rIXgaw9Xsl
>>
>>
>> "Anthride" <Anthride@discussions.microsoft.com> a écrit dans le message
>> de
>> news: 8A5C9E65-C1EB-481C-AEA6-317E358BF8C8@microsoft.com...
>> > Bonjour
>> >
>> > J'ai besoin de tester le nom de la touche du clavier qui est tapée .
>> > Pour
>> > cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
>> > Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
>> > ou
>> > Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
>> > ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
>> > les
>> > differencier ? ou peut on connaire la valeur keychar a partir de Keys.
>> > merci Desveenes Claude
>> >
>> > --
>> > anthride
>>
>>
>>
Utiliser une API pour ce genre de chose n'est vraiement pas adapté a mon
gous
il faut utiliser les evenements qui existe deja pour ce genre de chose
Le lien que je tes donné, devrais pourtant correspondre a tes besoin non ?
exemple de code encore, avec l'evenement KeyPress
http://www.troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
"Anthride" a écrit dans le message de
news:
> J'ai créé un Controle herite d'un Datagridview au quel j'ai ajouté
> l'evenement QuelTouche pour tester quelle touche est frappée afin de
> contourner les methode par defaut du Datagridview. par exemple la touche
> ENTER me dirige sur la cellule à droite et Non sur la ligne Suivante.
> Je voudrais que ce controle me serve a changer la touche POINT par la
> Touche
> VIRGULE pour me servir que du clavier numerique pour la saisie des valeurs
> numeriques.
> Mais lorsque je change Keys.Decimal par Keys.OemComma , la valeur est Bien
> VIRGULE si je ne suis pas en CpasLock , mais elle est POINT INTEROGATION
> si
> je suis en CAPSLOCK.
> Je voudrais qu'elle soit toujours "VIRGULE".
> J'espere que je suis plus clair et lerci de votre aide
>
>
> Voici le Code de mon Controle :
> Imports System
> Imports System.Windows.Forms
>
> Public Class DGViewOdeV
> Inherits System.Windows.Forms.DataGridView
>
> Event QuelTouche(ByVal wkey As Keys)
> Protected Overrides Function ProcessCmdKey(ByRef msg As Message, _
> ByVal Keydata As Keys) As
> Boolean
> Const WM_KEYDOWN As Integer = &H100
> Const WM_SYSKEYDOWN As Integer = &H104
>
>
> If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
> Select Case (Keydata)
> Case Keys.Down
> ' Me.Parent.Text = "DOWN Arrow Captured "
> Case Keys.Up
> ' Me.Parent.Text = "UP Arrow Captured "
> Case Keys.Tab
> ' Me.Parent.Text = "TAB Key Captured "
> Case (Keys.Control Or Keys.M)
> ' Me.Parent.Text = "<CTRL> + M Capturé "
> Case (Keys.Alt Or Keys.Z)
> ' Me.Parent.Text = "<ALT> + Z Capturé"
> Case Keys.Enter
> ' Me.Parent.Text = " TOUCHE ENTER "
> Case Keys.Return
> ' Me.Parent.Text = " TOUCHE RETURNNNNN "
> Case Keys.Decimal
> If My.Computer.Keyboard.CapsLock Then
> MsgBox("CAPS LOCK on")
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> ' SendKeys.Send("{CAPSLOCK}")
> ' If My.Computer.Keyboard.CapsLock Then
> ' MsgBox("CAPS LOCK off 22222222222222222222222")
> ' End If
> Else
> MsgBox("CAPS LOCK off")
> ' Change le Point en Virgulr
> msg.WParam = CType(Keys.Oemcomma, IntPtr)
> End If
> Case Else
> ' Me.Parent.Text = "AUTRE TOUCHE " & Keydata.ToString
> End Select
> ' Me.Parent.Text = Keydata.ToString
>
> RaiseEvent QuelTouche(Keydata)
> ' Return MyBase.ProcessCmdKey(msg, Keydata)
> End If
>
> End Function
>
> End Class
>
>
>
> --
> anthride
>
>
> "TroXsA" a écrit :
>
>> Bonjour,
>>
>> J'crois pas avoir trop bien compris tout ! :)
>> il faut faire si Shiht + Ctrl est enfoncé en meme temps alors ....
>> http://forum.troxsa.info/index.php?topic.0 a voir sa peu d'aider !
>>
>> @+
>>
>> --
>>
>>
>> Cordialement,
>>
>> Site : http://www.troxsa.info
>> Mail : http://cerbermail.com/?rIXgaw9Xsl
>>
>>
>> "Anthride" a écrit dans le message
>> de
>> news:
>> > Bonjour
>> >
>> > J'ai besoin de tester le nom de la touche du clavier qui est tapée .
>> > Pour
>> > cela je teste Keys et j'ai le Nom (Numpad1 , VerrNum .... Etc )
>> > Mais pour les Touches qui ont plusieurs valeurs suivant si Shift, Maj
>> > ou
>> > Ctrl sont enfoncées , le Nom est le meme : par exemple la touche
>> > ?(interrogation) et , (virgule) s'appelle OemComma. Comment faire pour
>> > les
>> > differencier ? ou peut on connaire la valeur keychar a partir de Keys.
>> > merci Desveenes Claude
>> >
>> > --
>> > anthride
>>
>>
>>
Avant un KeyPress et un KeyDown Hmmm
- Tu code de la lecture de penser utilisateur :)
Le Keypress c'est quand la touche est enfoncé
Le KeyDown quand la touche est relaché
donc je vois vraiement pas comment tu vas t'y prendre pour intersepté un
evenement avant un evenement a moins de brancher des electrodes sur le
cerveau des utilisateurs qui utiliserons ton programme ...
Bonne chance !
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
Avant un KeyPress et un KeyDown Hmmm
- Tu code de la lecture de penser utilisateur :)
Le Keypress c'est quand la touche est enfoncé
Le KeyDown quand la touche est relaché
donc je vois vraiement pas comment tu vas t'y prendre pour intersepté un
evenement avant un evenement a moins de brancher des electrodes sur le
cerveau des utilisateurs qui utiliserons ton programme ...
Bonne chance !
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl
Avant un KeyPress et un KeyDown Hmmm
- Tu code de la lecture de penser utilisateur :)
Le Keypress c'est quand la touche est enfoncé
Le KeyDown quand la touche est relaché
donc je vois vraiement pas comment tu vas t'y prendre pour intersepté un
evenement avant un evenement a moins de brancher des electrodes sur le
cerveau des utilisateurs qui utiliserons ton programme ...
Bonne chance !
--
Cordialement,
Site : http://www.troxsa.info
Mail : http://cerbermail.com/?rIXgaw9Xsl