相关疑难解决方法(0)

如何直接在Windows桌面上绘制C#?

这个问题已经被要求用于其他语言,甚至对于那些其他语言,我发现他们的答案缺乏如何正确地做到这一点,干净利落(没有混乱的屏幕重绘等等).

是否可以从C#绘制到Windows桌面?如果可能的话,我正在寻找一个例子.

c# desktop

14
推荐指数
2
解决办法
2万
查看次数

直接在所有窗口的顶部绘图

我需要一种直接在Windows中绘制到显示屏幕的方法.程序需要绘制的东西是非常简单的形状和一些文本.

我想开发一个与Xfire类似的程序.即它可以在全屏应用程序之上绘制.因此,例如,我想创建一个始终在后台运行的程序,并在即时全屏应用程序运行时(游戏,电影等)在右下角显示系统时间.我的程序还必须对按下按钮组合等事件做出反应(例如ctrl + alt + 1).

我的程序不能捕获鼠标事件.因此,如果它绘制一个圆圈并且在其下面有一个外部应用程序的按钮,则外部应用程序的按钮应该识别该单击.

这在Windows中怎么可能?

我想用以下语言之一实现这个程序:C++,C#,Java

我将非常感谢一些可以帮助我实现这一目标的API /教程.

c# c++ java windows

8
推荐指数
0
解决办法
9343
查看次数

如何使用 GDI API 在 Windows 桌面上绘图?

可能的重复:
使用类似于检查的 GDI+(或 GDI)在屏幕上绘制

我正在尝试编写一个没有窗口的蛇游戏,但冻结了前景并将蛇画在它上面。当游戏结束时,前景应该解冻。

我写了一些测试代码,应该在前景上绘制一个正方形,但它似乎只是冻结桌面一秒钟,然后冻结前景中的窗口,直到我最小化、最大化、关闭它或带来另一个窗口进入前景,它不会绘制任何东西。在代码中,我尝试存储桌面的位图,以便我基本上可以将其重置为原始状态并在不同的位置绘制正方形。任何人都可以发现我的代码的问题吗?

//Handle to the desktop window
HWND hDesktopWindow = GetDesktopWindow();

//Lock the window to prevent other applications drawing on it
if(!LockWindowUpdate(hDesktopWindow)){
    return 1;
}

//Calling GetDC with argument NULL retrieves the desktop's DC
HDC hdcDesktop = GetDCEx(hDesktopWindow, NULL, DCX_CACHE | DCX_LOCKWINDOWUPDATE);

//Create a compatible DC to allow us to store a bitmap of the desktop
HDC hdcCompatible;
if((hdcCompatible = CreateCompatibleDC(hdcDesktop)) == NULL){
    return 1;
}

//Create a compatible bitmap with the same dimensions as the …
Run Code Online (Sandbox Code Playgroud)

c++ winapi gdi bitmap

4
推荐指数
2
解决办法
5208
查看次数

C#光标突出显示/关注者

如何突出显示系统光标?像许多屏幕录制应用程序一样.理想情况下,我想在它周围显示一个光环.谢谢

.net c# highlighting cursor

3
推荐指数
1
解决办法
6052
查看次数

是否可以在没有实际窗口的情况下在Windows操作系统上显示"屏幕上"文本?

这个库完全正是我在Linux系统上所说的:http://ichi2.net/pyosd/

我对Win32 API的了解是有限的,但在我看来,除非你创建一个窗口并进入win32主循环,否则你无法做到.一些谷歌搜索也证实了这一点.

即便如此,它们是否会在Windows上实现更新的GUI框架或技术?

谢谢

windows user-interface winapi

1
推荐指数
1
解决办法
837
查看次数

标签 统计

c# ×3

c++ ×2

winapi ×2

windows ×2

.net ×1

bitmap ×1

cursor ×1

desktop ×1

gdi ×1

highlighting ×1

java ×1

user-interface ×1