zoukankan      html  css  js  c++  java
  • 22.1.11 关于无边框窗体的初步尝试(包含未解决)

    应要求不用WPF自带的边框以及最小化、最大化和关闭。自己写的,且只需要关闭

    在设置WindowStyle="None"取消边框后,(另外设置AllowsTransparency=”True”,可以把多余的黑边去除。)

    发现无法移动。而且显示也不是居中。这些都好解决

    1.居中

    public partial class MainWindow : Window
    {
      public MainWindow()
      {
        WindowStartupLocation = WindowStartupLocation.CenterScreen;
        InitializeComponent();
      }
    }

    2.移动

    protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
    {
      base.OnMouseLeftButtonDown(e);

      // Begin dragging the window
      this.DragMove();
    }

    官方DragMove

    https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.window.dragmove?view=netframework-4.8

    其它可以参考:

    https://www.cnblogs.com/xietianjiao/p/7325137.html

    但最后遇到一个问题没有解决:

    在移动后因为操作系统功能,在窗体接触屏幕边缘时会全屏显示,但这个时候我没法再移动窗体。

    以为如果是用自带边框,相当于我能在全屏后拖住边框,还能取消全屏。

    但无边框的话真不知道怎么操作

    唯一在网上看到一条可能是解决方法的方案,但没时间研究了,就先附上

    https://blog.csdn.net/qq_19764639/article/details/96125324

    https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.shell.windowchrome?redirectedfrom=MSDN&view=netframework-4.5#%E5%AE%9A%E4%B9%89

    关于关闭是使用了button按键

    里面参数:

    • SnapsToDevicePixels以在整个 UI 上启用像素对齐呈现。 对于运行在大于 96 dots per inch (dpi) 的设备,像素对齐呈现可以最小化在单一实线附近出现的抗锯齿视觉瑕疵。

    https://www.cnblogs.com/liancs/archive/2012/06/15/3879272.html

    https://blog.csdn.net/dearbigdog/article/details/12002525

    •  RecognizesAccessKey:是否识别特殊字符(eg.下划线)

    WPF中的RecognizesAccessKey问题 - 走遍江湖 - 博客园 (cnblogs.com)

    • Stroke:虚线颜色
    • radiusx和radiusY:对于椭圆来说,就是a和b的长

  • 相关阅读:
    最长公共子序列
    小测试 炒书
    洛谷P1968 美元汇率
    洛谷P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈
    【刷题】【树】【模拟】树网的核
    【刷题】【dp】地精的贸易
    【刷题】【模拟】复制cs
    【刷题】【模拟】3n+1
    【刷题】【dp】中国象棋
    【刷题】【搜索】新数独
  • 原文地址:https://www.cnblogs.com/rinroll/p/15787602.html
Copyright © 2011-2022 走看看