win_wrap::common

Function attach_thread_input

Source
pub fn attach_thread_input(
    id_attach: u32,
    id_attach_to: u32,
    attach: bool,
) -> bool
Expand description

将一个线程的输入处理机制附加到或分离另一个线程的输入处理机制。 通过使用 attach_thread_input 函数,线程可以共享其输入状态 (例如键盘状态,当前焦点窗口) 另一个线程。 通过再次调用 attach_thread_input 并为 attach 参数指定 FALSE,将按照两个线程接收的顺序处理这两个线程接收的键盘和鼠标事件,直到这些线程被分离。 如果任一指定的线程没有消息队列, 则此函数将失败。当线程首次调用 USER 或 GDI 函数之一时,系统会创建线程的消息队列。 如果安装了日志记录挂钩, attach_thread_input 函数也会失败。日志记录挂钩将所有输入队列附加到一起。 请注意,键状态(可通过调用 get_key_state 或 get_keyboard_state 函数确定)在调用 attach_thread_input 后重置。 不能将线程附加到另一个桌面中的线程。 id_attach 要附加到另一个线程的线程的标识符。要附加的线程不能是系统线程。 id_attach_to 将附加到的线程的标识符。此线程不能是系统线程。线程无法附加到自身。因此, id_attach_to 不能等于 id_attach。 attach 如果此参数为 TRUE,则附加两个线程。如果参数为 FALSE,则分离线程。