问题标签 [transparent-control]
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# - 如何创建一个在其他控件之上工作的透明控件?
我有一个控件(派生自 System.Windows.Forms.Control),它在某些区域需要是透明的。我已经通过使用 SetStyle() 实现了这一点:
现在,如果窗体和透明控件之间没有控件,这将起作用。但是,如果在透明控件下方碰巧有另一个控件(这是这里的用例),它就不起作用。中间控件不是绘制的,但下面的表格确实显示出来了。我可以通过覆盖 CreateParams 并像这样设置 WS_EX_TRANSPARENT 标志来获得所需的效果:
这里的问题是它确实减慢了控件的绘制速度。该控件已经是双缓冲的,因此无事可做。性能影响是如此糟糕,以至于无法接受。有没有其他人遇到过这个问题?我能找到的所有资源都建议使用方法#1,但同样,这在我的情况下不起作用。
编辑:我应该注意我确实有一个解决方法。子(透明)控件可以简单地将自己绘制到父图形对象上,但它真的很丑陋,我根本不喜欢这个解决方案(尽管它可能是我所拥有的全部)。
EDIT2:因此,根据我得到的关于透明度如何在 .NET 中工作的建议,我在包含透明控件的用户控件中实现了 IContainer 接口。我创建了一个实现 ISite 的类,我将我的子控件添加到 UserControl 的 Components 集合中,Container 属性在调试器中正确排列,但我仍然没有得到透明效果。有没有人有任何想法?
c# - c#: transparent in tabControl
I'm looking for a way to cause a tabControl (framework 2.0) to be transparent in back ground. I have a custom tabControl that inherite from microsoft tabControl. when I'm trying to paint a transparent image in OnPaintBackground the background becomes black. the problem is that I have under the tabContol a panel with background image so I can't paint in the method OnPaintBackground only the color. I'm looking for a way to find the image which located exacly under the tabControl so I'll be able to paint with graphics.drawimage and it will look transparent.
Does someone has an idea with code? (or another way to do it)
Note: this.SetStyle(ControlStyles.SupportsTransparentBackColor, true) - does not help!
vb.net - VB.net透明控制问题
我已经创建了一个如上的控件,这个控件允许我导入一个带有 alpha 通道和随机形状的 png。然后它可以显示在任何其他控件之上,即文本框、图片框等。并且背景应始终显示其下方的内容,而不是仅显示其父控件。
如果它是静态模式,它就可以工作,即在表格中静止。但是当我尝试拖动/移动它时,控件无法正确呈现自身,并且还位于其他控件下方。
wpf - WPF:忽略鼠标点击覆盖/装饰器,但处理 MouseEnter 事件
我真正想要的是一个忽略鼠标单击事件但仍捕获鼠标进入和离开事件的 IsHitTestVisible 版本。
背景:无论何时,都会在控件下弹出一个信息叠加层,并带有焦点。这是一项要求,因此我无权删除此行为。这是使用包含矩形形状的装饰器来实现的,并填充了图像画笔。所有控件均以编程方式创建,不涉及 XAML。
期望的行为:当用户将鼠标悬停在 Rectangle 上时,它应该变得部分透明。这样他们就可以看到覆盖层下方的其他控件并单击它们。当用户点击覆盖时,点击应该传递到覆盖下的任何控件,就在用户点击的地方。
问题:如果我将IsHitTestVisible设置为 True 以允许鼠标点击通过,我不会收到 MouseEnter 事件。
有没有一种简单的方法可以让 IsHitTestVisible True,然后将除了 2-3 个事件之外的所有事件传递给装饰器下方的正确控件?我正在寻找一种不涉及计算光标下方的控件的解决方案,因为 WPF 显然能够为我做到这一点。
或者,我是否可以将 IsHitTestVisible 设置为 False,然后使用另一种简单的方法来确定鼠标何时位于装饰器上方?
更新:我仍然希望得到答案,但到目前为止,最有希望的解决方案似乎是让 IsHitTestVisible 为真,并使用 WPF 命中测试 API 来确定鼠标光标下方的控件类型;如果它是我所知道的,我会向它发送一个 Click 命令。不过,不确定这是否值得;截至目前,单击会关闭我的叠加层,因此用户只需单击两次。
谢谢!
android - 如何在 HTML 中实现透明度或不透明度控制栏
我有两张相互重叠的地图。现在我想为它们添加不透明度控制。但我不知道该怎么做。请建议。我在 webview 中添加的 HTMl 中覆盖地图。谢谢阿莎
c# - 0% 窗体不透明度而不影响 C# 中的控件(项目)
如何在不影响控件(项目)的情况下实现 0% 的表单不透明度?
我发现改变表单不透明度而不改变包含控件的不透明度,但没有答案。答案是什么?
user-controls - 渐变的透明度问题 - 用户控件上的面板中的标签,最终显示在父窗体上
我知道这已经被问过很多次了,但不是我试图解决它的方式。
我在用户控件的面板中有标签,用户控件进入表单。
Label.BackColor = 透明。
面板来自 DevExpress,我设置了渐变背景。
问题:标签不透明;它们每个都显示为文本周围的白色实心矩形。(我假设白色来自面板,因为两种渐变色中的第一种是白色。)
我谷歌上关于这个问题的所有内容都说我需要滚动我自己的标签控件并触发特殊的 GDI+ 命令,并使控件无效,并挂钩 Paint 事件并唱出激动人心的海上棚屋,并将一只脚举过头顶,然后......
真的吗?标签不允许".BackColor=Transparent" 吗?为什么那行不通?
最好的方法是什么?
c# - 在MFC中使用透明背景的winforms控件
全部。我正在编写一个使用 Winforms 用户控件的 MFC 应用程序。
我用 c# 制作了一个圆形控件,并使用 MFC 托管技术将它放在我的 MFC 对话框中。但是该控件不会透明地显示其背景。所以,看起来很可怜。我试图设置与透明度相关的控件属性,但它没有用。
谁能帮我把我的控制变得漂亮?
此致。
delphi - Transparent group box
I have inherited from TGroupBox of the Delphi native control and overriden its Paint method to draw rounded rectangle.
After overriding the Create params, the Paint method is as below.
The major problem i m facing is that, i have few labels on top of the transparent group box. When i open the form the labels look fine, but when the text changes, some bounding rectangles of the labels will be visible. This is looking weird on top of transparent box.
Even when i resize the form, the group box itself disappears, when i change the focus to another application and bring back my application, the group box draws itself.
Am i missing anything with respect to drawing? Any windows messages that i need to take care of???
Thanks in advance Rahul
delphi - 如何在保持组件可见的同时使表单透明?
我需要制作一种包含透明区域的PNG图像的程序。表单必须是不可见的,而图像必须保持可见,透明区域必须保持透明。问题是图像透明度。在这种情况下,主窗体是透明的、不可见的,而所有组件/控件都保持可见。但是,PNG 图像的透明区域不保持透明度。如何保持透明度?