La struttura INPUT viene utilizzata da SendInput per sintetizzare le battiture, i movimenti del mouse, e fa clic sul pulsante.
typedef struct {tagINPUT
DWORD digitare;
Unione
{
MOUSEINPUT mi;
KEYBDINPUT ki;
HARDWAREINPUT Ciao;
};
} DI INPUT, * PINPUT, LONTANO * LPINPUT
| Valore | Significato |
|---|---|
| INPUT_MOUSE | L'evento è un evento del mouse. Utilizzare la struttura mi dell'Unione. |
| INPUT_KEYBOARD | L'evento è un evento di tastiera. Utilizzare la struttura ki dell'Unione. |
| INPUT_HARDWARE | Windows 95: L'evento è da input hardware diverso da una tastiera o un mouse. Utilizzare la struttura Ciao dell'Unione. |
typedef struct {tagMOUSEINPUT
Dx lungo;
Dy lungo;
DWORD mouseData;
DWORD dwFlags;
DWORD tempo;
DWORD dwExtraInfo;
} MOUSEINPUT, * PMOUSEINPUT, LONTANO * LPMOUSEINPUT
Se dwFlags non contiene MOUSEEVENTF_WHEEL, poi mouseData dovrebbe essere zero.
| Valore | Significato |
|---|---|
| MOUSEEVENTF_ABSOLUTE | Specifica che i membri dx e dy contengano normalizzate coordinate assolute. Se il flag non è impostato, i membri dx e dy contengono dati relativi: il cambiamento di posizione, dal momento che l'ultimo ha riferito la posizione. Questo flag può essere impostato o non impostato, indipendentemente dal tipo di mouse o altro dispositivo di puntamento, se del caso, è collegato al sistema. Per ulteriori informazioni sul movimento del mouse relativa, vedere la sezione Osservazioni seguente. |
| MOUSEEVENTF_MOVE | Specifica che si è verificato movimento. |
| MOUSEEVENTF_LEFTDOWN | Specifica che è stato premuto il pulsante sinistro. |
| MOUSEEVENTF_LEFTUP | Specifica che è stato rilasciato il pulsante sinistro. |
| MOUSEEVENTF_RIGHTDOWN | Specifica che è stato premuto il pulsante destro. |
| MOUSEEVENTF_RIGHTUP | Specifica che è stato rilasciato il pulsante destro. |
| MOUSEEVENTF_MIDDLEDOWN | Specifica che è stato premuto il tasto centrale. |
| MOUSEEVENTF_MIDDLEUP | Specifica che è stato rilasciato il tasto centrale. |
| MOUSEEVENTF_WHEEL | Windows NT: Specifica che la ruota è stata spostata, se il mouse è una ruota. La quantità di movimento è specificata in mouseData. . |
Per indicare i cambiamenti nella situazione, condizioni non in corso sono impostati i flag di bit che specificano lo stato del pulsante del mouse. Ad esempio, se il pulsante sinistro del mouse è premuto e tenuto premuto, MOUSEEVENTF_LEFTDOWN viene impostato quando in primo luogo viene premuto il pulsante sinistro, ma non per i movimenti successivi. Allo stesso modo, MOUSEEVENTF_LEFTUP viene impostato solo quando il pulsante viene rilasciato in primo luogo.
typedef struct {tagKEYBDINPUT
WORD wVk;
WORD wScan;
DWORD dwFlags;
DWORD tempo;
DWORD dwExtraInfo;
} KEYBDINPUT, * PKEYBDINPUT, LONTANO * LPKEYBDINPUT
| Valore | Significato |
|---|---|
| KEYEVENTF_EXTENDEDKEY | Se specificato, il codice di scansione è stato preceduto da un byte di prefisso che ha il valore 0xE0 (224). |
| KEYEVENTF_KEYUP | Se specificata, la chiave viene rilasciata. Se non specificato, viene premuto il tasto. |
typedef struct {tagHARDWAREINPUT
DWORD uMsg;
WORD wParamL;
WORD wParamH;
DWORD dwExtraInfo;
} HARDWAREINPUT, * PHARDWAREINPUT, LONTANO * LPHARDWAREINPUT
Se si è mosso il mouse, indicata da MOUSEEVENTF_MOVE essere impostata, dx e dy specificare informazioni su quel movimento. L'informazione è data come valori integer assoluto o relativo.
Se viene specificato il valore MOUSEEVENTF_ABSOLUTE, dx e dy contengono coordinate assolute normalizzate tra 0 e 65.535. La routine evento mappe queste coordinate sulla superficie del display. Coordinare (0,0) mappe sull'angolo superiore sinistro della superficie di visualizzazione; mappe coordinata (65535,65535) sull'angolo inferiore destro.
Se non viene specificato il valore MOUSEEVENTF_ABSOLUTE, dx e dy specificare mozioni rispetto alla precedente evento del mouse (l'ultima posizione segnalata). I valori positivi significano il mouse spostato a destra (o verso il basso); i valori negativi significano il mouse spostato a sinistra (o alto).
Il movimento del mouse relativa è soggetta agli effetti della velocità del mouse e i valori di soglia di due mouse. Un utente imposta questi tre valori con il dispositivo di scorrimento di Velocità del puntatore del foglio del Mouseproprietà del pannello di controllo. Un'applicazione ottiene e imposta questi valori con la funzione SystemParametersInfo .
Il sistema operativo si applica due prove al movimento del mouse relativa specificato. Se la distanza specificata lungo l'asse x o y è maggiore del valore di soglia del mouse primo, e la velocità del mouse non è zero, il sistema operativo raddoppia la distanza. Se la distanza specificata lungo l'asse x o y è maggiore del valore di soglia del mouse secondo, e la velocità del mouse è uguale a due, il sistema operativo raddoppia la distanza che ha provocato dall'applicare il primo test di soglia. È quindi possibile che il sistema operativo moltiplicare il movimento del mouse relativa specificato insieme x o y asse fino a quattro volte.
nbsp; Windows &NT: richiede una versione 4.0 SP3 o versione successiva.
Windows:Richiede Windows 98 o versioni successive.
Windows CE:Non supportato.
Intestazione:Dichiarata in winuser.
Cenni preliminari sull'Input di tastiera, tastiera Input strutture, GetMessageExtraInfo, SendInput, SystemParametersInfo