我想知道默认菜单弹出对齐/方向是什么。当您在应用程序中使用主菜单或使用上下文弹出菜单时,它会向右打开,居中或向左打开 - 具体取决于Windows版本,一些自定义注册表设置或左/右选项。
必须有一种方法可以使用某些Windows API获取该信息(而不是为不同的Windows版本/首选项/注册表修改等构建复杂的函数。)
我需要将此信息应用于我的应用程序中的某些自定义元素,我想要打开与该系统上所有其他菜单相同的方向。这是一个Delphi应用程序,但如果它是一个API调用,那么我会对您选择的语言解决方案感到高兴。
答案 0 :(得分:0)
感谢Raymond Chen和Jonathan Potter的评论,这是一个可以解决问题的功能:
function PopupMenusRightAligned(): Boolean;
var
res: Integer;
begin
SystemParametersInfo(SPI_GetMenuDropAlignment, 0, @res, 0);
Result := res=0;
end;