设置窗体透明C#代码

上个示例是C#调用windowsapi在原来代码上加入窗体透明,控件不透明代码:1usingSystem;2usingSystem.Runtime.InteropServices;3

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

上个示例是C#调用windows api

在原来代码上加入窗体透明,控件不透明代码:

透明

 1 using System;
 2 using System.Runtime.InteropServices;
 3 using System.Windows.Forms;
 4 
 5 namespace HoverTreeWinForm
 6 {
 7 public partial class FormHewenqi : Form
 8 {
 9 
10 /// <summary>
11 /// 使窗体透明 by 何问起
12 /// </summary>
13 protected override CreateParams CreateParams
14 {
15 get
16 {
17 
18 CreateParams parameter = base.CreateParams;
19 parameter.ExStyle |= 0x00080000;
20 return parameter;
21 
22 }
23 }
24 
25 /// <summary>
26 /// http://hovertree.com/h/bjaf/v4y0b2l6.htm
27 /// </summary>
28 /// <returns></returns>
29 [DllImport("User32.dll")]
30 public static extern int MessageBox(int h, string m, string c, int type);
31 public FormHewenqi()
32 {
33 InitializeComponent();
34 //使控件不透明
35 this.TransparencyKey = BackColor;
36 }
37 
38 private void button_hewenqi_Click(object sender, EventArgs e)
39 {
40 MessageBox(0, "Hello Win32 API HoverTree", "何问起网", 4);
41 }
42 
43 private void linkLabel_help_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
44 {
45 System.Diagnostics.Process.Start("http://hovertree.com/h/bjaf/v4y0b2l6.htm");
46 }
47 
48 private void button_hoverc_Click(object sender, EventArgs e)
49 {
50 //获取主窗体句柄
51 IntPtr h_handle = HewenqiUser32.GetCurrentWindowHandle();
52 int h_jubing = 0; ;
53 if (h_handle != IntPtr.Zero)
54 h_jubing = (int)(h_handle);
55 MessageBox(h_jubing, "Hello hovertree.com", "欢迎光临何问起", 4);
56 }
57 }
58 }

1、先把窗体的颜色变成一种很不常见的颜色。 
2、把该窗体的TransparecyKey的颜色设置成窗体的颜色。 
3、加入控件,但是控件的颜色不能和窗体颜色一致,否则控件也透明。 
运行程序后,就只能看见标题栏和控件了。

转自:http://hovertree.com/h/bjaf/i3lp7ay0.htm

演示下载:http://pan.baidu.com/s/1mhfgJ6C g56m

源码下载:https://github.com/shangyuxian/HoverTree

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120656.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • win10关闭445端口方法_服务器关闭445端口

    win10关闭445端口方法_服务器关闭445端口445端口是一种TCP端口,有了它我们可以在局域网中轻松访问各种共享文件夹或共享打印机,但也正是因为有了它,黑客们才有了可乘之机,他们能通过该端口偷偷共享你的硬盘,甚至会在悄无声息中将你的硬盘格式化掉。今天小编将为大家分享Win11关闭445端口的方法,一起来看看吧!更多重装系统教程尽在小白系统重装官网  1、首先,按Win+S组合键,或点击底部任务栏上的搜索图标,打开的Windows搜索窗口,顶部输入Windows防火墙,然后点击系统给出的最佳匹配WindowsDefender防

    2022年10月7日
  • 无法获得下列许可 solidworks_2019年个人总结

    无法获得下列许可 solidworks_2019年个人总结通常,按照网上教程来安装SolidWorks2019、2020到最后启动软件有可能会出现这个错误;下面提供本人亲测可用、在用的解决办法供各位参考。1.如果弹出该错误提示时,先检查“SolidWorks_Flexnet_Server”这个文件夹的所在路径,建议移动到SolidWorks的安装根目录下,即“SOLIDWORKSCorp”目录下。因自身原因无法移动的,请勿删除该文件夹,否则会激活…

    2022年9月22日
  • RDN论文阅读笔记

    RDN论文阅读笔记“ResidualDenseNetworkforImageSuper-Resolution”发表于CVPR2018论文:https://arxiv.org/abs/1802.08797代码:https://github.com/yulunzhang/RDNhttps://github.com/lizhengwei1992/ResidualDenseNetwork-Pytorc…

    2022年6月18日
  • 字符串常量池概述[通俗易懂]

    字符串常量池概述[通俗易懂]字符串常量池概述常量池表(Constant_Pooltable)Class文件中存储所有常量(包括字符串)的table。这是Class文件中的内容,还不是运行时的内容,不要理解它是个池子,其实就是Class文件中的字节码指令。运行时常量池(RuntimeConstantPool)JVM内存中方法区的一部分,这是运行时的内容。这部分内容(绝大部分)是随着JVM运行时候,从常量池转化而来,每个Class对应一个运行时常量池。上一句中说绝大部分是因为:除了Class中常量池内容,还可能包括

    2022年7月28日
  • Spring Boot 日志配置(超详细)

    Spring Boot 日志配置(超详细)SpringBoot日志配置(超详细)

    2022年6月12日
  • n皇后问题有几个解_求n的阶乘java代码

    n皇后问题有几个解_求n的阶乘java代码N皇后问题是一个经典的问题,在一个N*N的棋盘上放置N个皇后,每行一个并使其不能互相攻击(同一行、同一列、同一斜线上的皇后都会自动攻击)。n皇后问题不算是陈词滥调,也是老生常谈了,作为回溯的经典案例,有递归和非递归两种实现方式,同时,除了回溯算法,最近我在网上查了下看到还可以用位运算来解决这个问题。本次趁着本学期算法课程的期末要求,我将对两种算法的实验效果进行分析。1、使用回溯解决n皇后问

    2022年9月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号