GUI程序,怎么让窗口的边框消失(或者修改它

GUI程序,怎么让窗口的边框消失(或者修改它,第1张

setUndecorated(true)

需要自己去实现窗体的拖拽等功能

也就是说,最大、最小、关闭那些按钮需要你自己去实现

其实通过 UI 层(LookAndFeel)处理的话

可以让窗体应用 LookAndFeel 实现的窗体边框外观

Swing 默认的 MetalLookAndFeel 就支持这样的模式

JFramesetDefaultLookAndFeelDecorated(true);

JDialogsetDefaultLookAndFeelDecorated(true);

这个模式的好处是,L&F 已经帮你处理好了拖拽、最大、最小、关闭按钮

缺点是:如果你想修改这些按钮的外观,需要出修改对应的 UI 类

如果对 Swing L&F 不熟悉的话,处理起来比较困难

全屏模式下是没有边框的,黑屏的问题有软件冲突和卡屏。重新启动下游戏就好了。

游戏是所有哺乳类动物,特别是灵长类动物学习生存的第一步。它是一种基于物质需求满足之上的,在一种特定时间、空间范围内遵循某种特定规则的,追求精神需求满足的社会行为方式。

游戏有智力游戏和活动性游戏之分,又翻译为Play,Pastime,Playgame,Sport,Spore,Squail,Games,Gamest,Hopscotch,Jeu,Toy。

合理适度的游戏允许人类在模拟环境下挑战和克服障碍,可以帮助人类开发智力、锻炼思维和反应能力、训练技能、培养规则意识等,大型网络游戏还可以培养战略战术意识和团队精神。但凡事过犹不及,过度游戏也会对人的身心健康产生危害。

2018年6月18日,世界卫生组织发布新版《国际疾病分类》,“游戏障碍” 被列为疾病。但是游戏障碍与人们口中说的游戏成瘾是两个不同的概念,容易混淆。游戏成瘾和游戏障碍有明显的程度区别。

你创建了透明的窗体的话如果你不在window的MouseleftButtonDown事件中添加thisDragMove()的话默认是不能拖动的,然后设置window的showInTaskBar为false,任务栏上就不显示图标,然后把窗口置于最底层,这样就等于钉在桌面上了

英雄联盟使用全屏开启游戏卡顿是由于游戏与电脑兼容性差,应当使用兼容模式打开英雄联盟。

解决方法:

1、开启电脑,右键英雄联盟应用程序打开菜单栏;

2、在菜单栏选择属性选项;

3、在属性页面下拉菜单栏,选择高级选项;

4、进入高级页面,勾选使用兼容模式打开该应用程序选项;

5、选择确定选项并关闭该页面;

6、使用左键英雄联盟应用程序即可使用兼容模式打开该应用。

      private const int GWL_STYLE = (-16);

      private const int GWL_EXSTYLE = (-20);

      private const uint WS_EX_LAYERED = 0x80000;

      private const uint WS_EX_TRANSPARENT = 0x20;

      private const uint WS_THICKFRAME = 262144;

      private const uint WS_BORDER = 8388608;

    

/// <summary>使指定 「 <see cref="IntPtr"/> 句柄」 窗体 边框样式变为无边框。</summary>

      public static uint 无边框窗体(IntPtr 句柄) {

          uint style = API_窗口GetWindowLong(句柄, GWL_STYLE);

          style &= ~WS_BORDER;

          style &= ~WS_THICKFRAME;

          return API_窗口SetWindowLong(句柄, GWL_STYLE, style); ;

      }

API窗口静态类

      [DllImport("user32", EntryPoint = "SetWindowLong")]

      public static extern uint SetWindowLong(IntPtr hwnd, int nIndex, uint dwNewLong);

      [DllImport("user32", EntryPoint = "GetWindowLong")]

      public static extern uint GetWindowLong(IntPtr hwnd, int nIndex);

修改窗口位置

/// <summary>

      /// 设置窗体的位置和大小。

      /// </summary>

      /// <param name="hWnd"></param>

      /// <param name="hWndInsertAfter">用于标识在z-顺序的此 CWnd 对象之前的 CWnd 对象。

      /// <para></para>如果uFlags参数中设置了SWP_NOZORDER标记则本参数将被忽略。可为下列值之一:

      /// <para></para>HWND_BOTTOM:值为1,将窗体置于Z序的底部。如果参数hWnd标识了一个顶层窗体,则窗体失去顶级位置,并且被置在其他窗体的底部。

      /// <para></para>HWND_NOTOPMOST:值为-2,将窗体置于所有非顶层窗体之上(即在所有顶层窗体之后)。如果窗体已经是非顶层窗体则该标志不起作用。

      /// <para></para>HWND_TOP:值为0,将窗体置于Z序的顶部。

      /// <para></para>HWND_TOPMOST:值为-1,将窗体置于所有非顶层窗体之上。即使窗体未被激活窗体也将保持顶级位置。</param>

      /// <param name="x">窗体新的x坐标。如hwnd是一个子窗体,则x用父窗体的客户区坐标表示</param>

      /// <param name="y">窗体新的y坐标。如hwnd是一个子窗体,则y用父窗体的客户区坐标表示</param>

/// <param name="Width">指定新的窗体宽度</param>

/// <param name="Height">指定新的窗体高度</param>

      /// <param name="wFlags"></param>

      /// <returns></returns>

      [DllImport("user32dll", CharSet = CharSetAnsi, EntryPoint = "SetWindowPos")]

      public static extern int SetWindowPos(IntPtr hWnd, hWndInsertAfter hWndInsertAfter, int x, int y, int Width, int Height, wFlags wFlags);

      /// <summary>

      /// 调整指定 「 <see cref="IntPtr"/> 句柄」 窗体的位置和尺寸。

      /// </summary>

      /// <param name="句柄">指定 「 <see cref="IntPtr"/> 句柄」 窗体</param>

      /// <param name="x">横坐标</param>

      /// <param name="y">纵坐标</param>

      /// <param name="w">宽</param>

      /// <param name="h">高</param>

      public static int 调整窗体(IntPtr 句柄, int x, int y, int w, int h) {

          return API_窗口SetWindowPos(句柄, 0, x, y, w, h, wFlagsSWP_NOZORDER);

      }

      /// <summary>

      /// 调整指定 「 <see cref="IntPtr"/> 句柄」 窗体的位置。

      /// </summary>

      /// <param name="句柄">指定 「 <see cref="IntPtr"/> 句柄」 窗体</param>

      /// <param name="x">横坐标</param>

      /// <param name="y">纵坐标</param>

      public static int 调整窗体位置(IntPtr 句柄, int x, int y) {

          return API_窗口SetWindowPos(句柄, 0, x, y, 0, 0, wFlagsSWP_NOSIZE | wFlagsSWP_NOZORDER);

      }

以上就是关于GUI程序,怎么让窗口的边框消失(或者修改它全部的内容,包括:GUI程序,怎么让窗口的边框消失(或者修改它、游戏全屏会黑屏但是无边框就没事。高悬赏、WPF 透明窗体,无边框(比如一些桌面的日历桌面程序),如何让程序钉在桌面上。直接镶嵌在桌面背景上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10088610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存