问题标签 [uxtheme]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 具有 Windows 7 列标题样式的 ListView
可能重复:
NetUIHWND 和 DirectUIHWND
我已经看到 Windows 7 引入了一种新的列表视图样式,它甚至与 Windows Vista 不同。列在重新排序时具有淡入白和动画效果。在 Windows Vista 中,这些列只有一个有光泽的白灰色渐变,并且在重新排序时没有动画。
在 C# 中,我知道可以通过使用 uxtheme.dll 中的 SetTheme 来检索类似 Vista 的样式,但我没有找到获取 Windows 7 样式的代码片段。
如何检索仅限 Windows 7 的 ListView 样式?
c++ - 我必须使用什么 Uxtheme 函数来获得最小化、最大化和关闭按钮的默认大小?
我正在使用该DrawThemeBackground
功能在画布上绘制一些系统元素,并且我需要绘制表单的标题按钮,我错过的唯一部分是如何获取default
标题按钮的大小。Exist any Uxtheme function to get that info?
delphi - 使用 DrawThemeBackground 绘图时如何在从右到左 (RTL) 方向绘制元素部分?
我正在尝试以从右到左的方向绘制类的ttGlyphClosed
元素(就像什么时候一样)。我有一个问题,我不知道如何使我的屏幕外位图透明。位图的背景总是白色的。Explorer::Treeview
BiDiMode
bdLeftToRight
我正在使用以下代码来镜像图像:
问题是如何镜像DrawThemeBackground
函数绘制的元素(用于 RTL 读取)或如何使用此函数进行 RTL(从右到左)渲染?
c++ - “错误 C2065:'ON_WM_THEMECHANGED':未声明的标识符”
我正在使用VC6。如何解决错误?
类定义代码:
似乎我错过了一些头文件或lib文件,但是它们是什么,无论如何如何解决?
winapi - 具有原生 win7 外观的 MFC 彩色按钮
我正在使用 MFC 创建一个对话框项目并尝试为按钮赋予颜色。
我开始知道你能做的唯一方法是让按钮所有者绘制。OnCtlColor()
不适用于按钮。
我可以为按钮上色OnDrawItem
,但问题是,在此过程中,3D 酷炫的外观(在 Win7 中获得的略微圆角)丢失了。
有什么方法可以保留原始外观并在其上为按钮着色?
windows - 在会话 0 Winsta0 中启动在非默认桌面中运行的进程时无法加载 user32.dll
我有一个 Windows 服务(在 Windows Vista+ 上运行),它需要启动一个普通的 GUI 应用程序。出于某种原因,我需要在非默认桌面上运行 GUI 应用程序(当然,由于它是由服务进程启动的,所以它在 Session 0、WinSta0 中运行,但不在默认桌面上)。
代码看起来像这样。
TCreateProcess(...) 方法成功返回,但 GUI 应用程序在启动后立即退出。在 Gflags 的帮助下,我得到了以下信息。
我搜索了一段时间,似乎与安全问题有关。我试图将所有桌面相关权限授予当前用户,但没有帮助。
一件事可能会有所帮助。我注意到使用SYSTEM帐户运行时有几个DLL没有加载,第一个是uxTheme.dll。
任何人都知道为什么它不能在非默认桌面上工作,而在默认桌面上工作得很好?
谢谢。
c - 获取滚动条的主题过渡持续时间
我正在尝试实现一个自定义控件,该控件作为其WM_PAINT
处理程序的一部分,绘制一个主题滚动条箭头。我还希望按钮的视觉状态(正常、热、悬停、按下等)之间的转换BeginBufferedAnimation()
使用uxtheme.dll
.
我现在的问题是我无法为滚动条获得正确的淡入淡出持续时间,因为该GetThemeTransitionDuration()
功能失败了。E_INVALIDARG
当我尝试查询转换持续时间时,它没有成功,而是返回(-2147024809):
这很奇怪,原因有两个:
(1) 在我的 Windows 7 版本中,主题滚动条显然在状态之间具有快速淡入淡出动画(例如在 Windows 资源管理器中)。
(2) 如果我将主题更改为 BUTTON 并仅使用正常和热按钮状态,则该函数返回S_OK
并给出合理的转换持续时间(在我的机器上为 1000 毫秒)。
有没有办法查询我正在寻找的过渡持续时间?
c++ - 在 C++ 中获取 uxtheme.dll 的所有权并赢得 8.1
我试图以编程方式(c++)在我的 Windows 8.1 system32 文件夹中获得 uxtheme.dll 的所有权。我现在阅读、尝试和搜索了几个小时,但找不到任何解决方案。每次设置 uxtheme 所有权时,它都不会显示在属性选项卡中。所有权和全部权利始终由受信任的安装程序继承。
我试过了,system("takeown /f C:\Windows\system32\uxtheme.dll")
它打印成功,但遗憾的是没有用。
TakeOwnership()
msdn的函数也是如此。[http://msdn.microsoft.com/en-us/library/windows/desktop/aa379620%28v=vs.85%29.aspx]
我需要做什么来继承本地管理员的所有权,这样我就可以切换出这个 dll?资源保护和它有关系吗?
设置所有权后,我可以用 MoveFileEx() 替换 dll 吗?
非常感谢你,洛迪
c# - 同时在 ListView 上使用 CreateParams 和 SetWindowTheme
我正在使用 SetWindowTheme 函数 (uxtheme.dll) 使我的 ListView 看起来像 Windows 7 本机。当我对它进行排序时,我不得不使用 CreateParams 的东西来防止 ListView 闪烁。它起作用了,但是当我使用该 CreateParams 代码时,SetTheme 不再起作用。有没有办法同时使用 Windows 7 原生主题和 CreateParams?
谢谢
编辑: 我通过在我的自定义 ListView 的 OnHandleCreated void 中添加一个 SetWindowTheme 调用解决了这个问题。感谢汉斯帕桑特。