如何判断Windows任务栏的"自动隐藏"是否已启用?

Jim*_*eth 1 delphi winapi taskbar windows-explorer

如果Windows资源管理器任务栏设置为自动隐藏,如何通过Delphi程序告诉?

mSa*_*del 13

在Windows XP及更高版本中,您可以SHAppBarMessage使用ABM_GETSTATE消息调用API .

句法:

SHAppBarMessage(ABM_SETSTATE, pabd);
Run Code Online (Sandbox Code Playgroud)

pabd是指向APPBARDATAstruct 的指针.
头文件是:shellapi.h.

如果要获取任务栏的状态,请使用ABM_GETSTATE消息.你可以在delphi中调用这个api.


Hea*_*are 11

真的想知道的是什么?是因为你想知道可用的屏幕区域?

如果是这样,那么我相信您可以使用Screen.WorkAreaRect来确定可用的屏幕区域,其中排除所有(永久)工具栏等.