문제

사용자가 현재 유휴 상태인 경우 Windows가 NotifyIcon.BalloonTipShown 명령의 동작을 변경한다는 것을 보여주는 일부 문서가 인터넷에 있습니다. 키보드 및 마우스 이벤트를 확인하여 감지됨.현재 시스템 트레이에서 대부분의 시간을 보내는 응용 프로그램을 작업 중이지만 때때로 여러 개의 풍선 팁이 팝업으로 표시되므로 사용자가 현재 시스템 트레이에서 멀리 떨어져 있는 경우 해당 응용 프로그램을 놓치는 일이 없도록 하고 싶습니다. 체계.현재 표시된 풍선 도움말은 새 풍선 도움말이 표시되면 폐기되므로 사용자가 자리를 비운 경우 표시를 보류하고 싶습니다.

따라서 응용 프로그램이 시스템 트레이로 최소화된 경우 사용자가 현재 유휴 상태인지 확인할 수 있는 방법이 있습니까?

도움이 되었습니까?

해결책

Win32는 어떻습니까? 라스틴푸틴포 기능?

using System.Runtime.InteropServices;

[DllImport("User32.dll")] 
static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);

struct LASTINPUTINFO 
{
    public uint cbSize;
    public uint dwTime;
}

다른 팁

관리 코드

매초마다 마우스의 위치를 ​​확인하십시오.사용자에게 보내는 새 메시지가 있으면 마우스로 움직임이 감지될 때까지 해당 메시지를 누르고 있습니다.

비관리 코드

보다 마우스 및 키보드 후크로 유휴 시간 감지

응답해 주셔서 감사합니다. 작업 중인 응용 프로그램에서 구현하는 것이 매우 간단하기 때문에 결국 GetLastInputInfo 함수를 사용하게 되었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top