Articles of 透明

Pygame或Python中的透明窗口

我试图做一个透明的窗口为我的游戏启animation面。 图像具有透明度,但我不能让窗口透明(就像看屏幕,桌面等等)。我发现所有的东西都是用pygame做的。 是否有任何外部图书馆,我可以拉出来,使这成为可能? BTW。 这完全是一个Linux项目。 所以操作系统特定也可以。 #Splash Screen screen = pygame.display.set_mode((680,300), NOFRAME) splashbg = pygame.image.load("Images/SplashBG.png") font = pygame.font.Font(None, 36) pygame.mixer.music.load("OriginalEnd.mp3") pygame.mixer.music.play(-1) screen.blit(splashbg,(0,0)) loadingtext = font.render("Loading…", 1, (255,255,255)) screen.blit(loadingtext, (200,250)) pygame.display.flip() pygame.time.delay(4000)

Java透明窗口

我正在尝试创build一个跟随鼠标的圆形窗口,并将点击传递给底层窗口。 我正在用Python和Qt(请参阅Python覆盖窗口 )做这个,但后来我切换到Java和Swing。 但是,我无法使窗口透明。 我试过这种方法,但它不起作用,但我认为我的系统支持透明度,因为如果我启动Screencast-O-Matic (这是在Java中),矩形实际上是透明的。 我怎么能做到这样的事情? (我在Linux KDE4上)

matplotlib和wxpython的透明度问题

我正在开发基于matplotlib和Windows的wxpython的GUI。 当使用“Windows XP”主题(绿色“开始”button,蓝色任务栏)时,我遇到了一个可见的问题。 我很确定,同样的问题也会出现在Vista上。 我知道一个不完善的解决方法,但我无法正确解决此问题。 我的matplotlib图embedded到wxPanel中,embedded到wxNotebook(如果您愿意,可以使用制表符)。 对于一些主题,选项卡的背景颜色实际上是一个渐变,并且wx会尝试将其与接近它的颜色相匹配。 这是不完美的解决方法:颜色匹配在窗口的顶部,但不在底部。 这就是为什么我想实际使用具有透明背景的matplotlib图。 当我将graphics的facecolor设置为透明的时候,它实际上会把桌面或者任何窗口的“颜色”放在后面,而不是wxPanel / wxNotebook。 如果我调整窗口大小,透明部分会累积绘制的数据。 这最后一个问题不再是主题,我也在“Windows Classic”上观察它。 在下面的示例代码中,我宁愿期望图的透明部分显示在embedded图的面板上设置的蓝色。 import wx import matplotlib matplotlib.use('WXAgg') from matplotlib.figure import Figure from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg import wxversion import sys class MyFrame ( wx.Frame ): def __init__( self, parent ): wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = […]

如何在透明窗口中绘制透明的DirectX内容?

我想绘制DirectX内容,以便它看起来是悬浮在桌面和任何其他正在运行的应用程序的顶部。 我也需要能够使directx内容半透明,所以其他的东西显示。 有没有办法做到这一点? 我正在使用C#托pipeDX。

获取鼠标指针下方的窗口句柄,同时忽略半透明窗口

我已经创build了一个半透明的窗体(60%的不透明度与黑色背景颜色),我的应用程序启动,最大化,在整个屏幕上。 基本上,它在整个桌面上投射灰色。 当用户将鼠标hover在桌面上的某个窗口上时,我想获取该窗口的句柄(hWnd)。 做这个工作的简单方法是: 暂时隐藏我的表单(或者,暂时将我的表单的不透明度设置为0.0) 调用[GetCursorPos] [1] 调用[WindowFromPoint] [2] 再次显示我的表单 这种方法的问题是我的表单/屏幕闪烁,我不喜欢。 我试图用两种方法解决这个问题: 我认为应该有办法通过调用ChildWindowFromPointEx (传递桌面和CWP_SKIPTRANSPARENT的hWnd),直接在窗体的窗口下获得窗口的hWnd,但似乎没有工作。 我也玩过[ChildWindowFromPoint] [4]和[RealChildWindowFromPoint] [5],但没有成功。 (PS Raymond Chen讨论了这些调用之间的差异, 在这里 ,我认为ChildWindowFromPointEx被devise为完成我所需要的) 我试图通过使用(1) SendMessage(GetDesktopWindow(), WM_SETREDRAW, false, 0)在我隐藏我的表单和(2) SendMessage(GetDesktopWindow(), WM_SETREDRAW, true, 0) SendMessage(GetDesktopWindow(), WM_SETREDRAW, false, 0)之前防止整个桌面刷新(types的“冻结”屏幕瞬间SendMessage(GetDesktopWindow(), WM_SETREDRAW, true, 0)隐藏我的表单后。 这不是很正确:屏幕的某些区域会冻结,会出现一些奇怪的黑色块,但是我知道,(1)确实有用,因为有一次我打电话给(1),没有(2)和我的桌面出现完全冻结(不得不重新启动,即使TaskMgr没有正确呈现)。 我也尝试过在窗体上使用SuspendLayout和ResumeLayout,但我不认为它们是为了处理我的情况。 任何帮助将不胜感激。

如何使用不透明的子控件(或子窗口)创build透明窗口?

首先,我正在用C ++编写Win32。 我一直在试图实现一个透明的窗口应该保持100%不透明的子窗口。 看来,子控件不能有更好的透明度(低于),如果我让我的父母100%透明,那么我的子控件也inheritance透明度。 我使用的代码 – SetLayeredWindowAttributes(GetParent(parentWindowHwnd), 0, 0, LWA_COLORKEY, LWA_ALPHA); 任何帮助? 如果我对我的问题不太清楚,也请回复。