是否可以设置按钮或文本框的不透明度?我知道您可以为表单设置不透明度,但我不太确定按钮或文本框。
8 回答
没有办法在 WinForms 中设置任何控件的不透明度。只有 Forms 具有 opacity 属性。如果您想让任何控件显示为半透明,则必须从头开始实现整个控件,这很可能涉及将控件作为图像绘制到其父级上。
您的替代方法是使用 WPF,它允许设置控件的不透明度。
只需在 RGBA 设置中为控件的颜色设置 Alpha 级别。代码将如下所示:
Control.Backcolor = Color.FromArgb(255, 255, 255, 255)
传递给 FromArgb 方法的第一个值是 Alpha。高值将意味着高不透明度,而低值将意味着高透明度。如果您希望它也是透明的,您可能还需要设置控件的 Forecolor 属性。
不,不透明度不是按钮属性,它是从表单设置的任何内容继承而来的。我不知道有什么方法可以通过使用褪色以显示为半透明的按钮图像来“伪造它”。
我认为如果你把一个按钮放在一个面板上,你可以淡化一个面板。
在控件所在的表单上,将 TransparencyKey 设置为一种颜色(例如:紫红色),然后将控件的背景颜色设置为紫红色。别客气。
我所做的是在 Photoshop 上编辑我自己的按钮(必须是图像),然后降低它的不透明度。因此,一旦我将图像放在表单上(这是我的按钮),看起来我在其中应用了不透明度。像这样:
简单的方法:通过转到它的 property-backcolor-any 来选择要使其透明的文本框的随机颜色。然后来到源头,找到你选择的颜色的颜色代码并写透明,你就完成了。前任:
<asp:TextBox ID="TextBox1"
runat="server" **BackColor="transparent"** Height="55px" Width="498px"> </asp:Textbox>
VB 也一样。干杯!!!
<asp:ImageButton ID="avbtn" runat="server" Height="55px"
ImageUrl="~/images/avatar.jpg"
onmouseout="this.style.opacity=0.7;this.filters.alpha.opacity=40"
onmouseover="this.style.opacity=1;this.filters.alpha.opacity=100"
style="opacity:0.4;filter:alpha(opacity=40)" />
这个适用于 ImageButton,但我没有在其他任何东西上测试过。