WPF學習——最大化有陰影的無邊框窗體
畫兩個按鈕,希望執行時只顯示一個按鈕,另一個按鈕隱藏。 用到 Visibility="Collapsed",隱藏按鈕,且不為它保留位置。<!--按鈕的繪製-->
<Button x:Name="btnMaximize" Padding="3" Click="btnMaximize_Click" HorizontalAlignment="Right" Template="{StaticResource ButtonTemplate}" VerticalAlignment="Top" Width="45" Height="42">
<Image Source="Image/maximize.png" Width="18" Height="18"></Image>
</Button> <Button x:Name="btnNormal" Padding="3" Click="btnNormal_Click" HorizontalAlignment="Right" Template="{StaticResource ButtonTemplate}" VerticalAlignment="Top" Width="45" Height="42" Visibility="Collapsed">
<Image Source="Image/huanyuan.png" Width="24" Height="24"></Image>
</Button> <Button x:Name="btMinWindow" Padding="3" Click="btMinWindow_Click" HorizontalAlignment="Right" Template="{StaticResource ButtonTemplate}" VerticalAlignment="Top" Width="45" Height="42">
<Image Source="Image/min.png" Width="18" Height="18"></Image>
</Button>
private void btnMaximize_Click(object sender, RoutedEventArgs e)
{
this.btnMaximize.Visibility = Visibility.Collapsed;//使最大化圖示隱藏this.btnNormal.Visibility = Visibility.Visible;//使還原圖示顯示this.rcnormal = new Rect(this.Left, this.Top, this.Width, this.Height);//儲存下當前位置與大小Rect rc = SystemParameters.WorkArea;//獲取工作區大小// this.BorderThickness = new Thickness(0, 0, 0, 0);//隱藏陰影// 經過試驗,發現window最多可以比螢幕大一圈,10畫素左右,再多就不能顯示了this.Left = -10;//設定位置this.Top = -10;this.Width = rc.Width+22;this.Height = rc.Height+20;
}
/// <summary> /// 還原 /// </summary> private void btnNormal_Click(object sender, RoutedEventArgs e)
{
// this.BorderThickness = new Thickness(24, 24, 24, 24);//顯示陰影this.Left = rcnormal.Left;this.Top = rcnormal.Top;this.Width = rcnormal.Width;this.Height = rcnormal.Height;this.btnMaximize.Visibility = Visibility.Visible;this.btnNormal.Visibility = Visibility.Collapsed;
}
private void btMinWindow_Click(object sender, RoutedEventArgs e)
{
this.WindowState = WindowState.Minimized;
}
相關推薦
WPF學習——最大化有陰影的無邊框窗體
畫兩個按鈕,希望執行時只顯示一個按鈕,另一個按鈕隱藏。 用到 Visibility="Collapsed",隱藏按鈕,且不為它保留位置。 <!--按鈕的繪製--> <Button x:Name="btnMaximize" Padding="3"
WPF 仿QQ無邊框窗體(自動隱藏/可縮放/最大化不覆蓋工作列)
今天做一個綜合案例,WPF的仿QQ窗體,貼邊自動隱藏,無邊框窗體,可拖拽實現縮放,最大化不覆蓋工作列。 無邊框窗體縮放,上一篇文章已經介紹了,不過今天使用的方法更簡單,不會佔用檢視的資源,純程式碼完成。 使用事件: OnMouseLeftButtonDown(),OnMou
WPF中製作無邊框窗體
眾所周知,在WinForm中,如果要製作一個無邊框窗體,可以將窗體的FormBorderStyle屬性設定為None來完成。如果要製作成異形窗體,則需要使用圖片或者使用GDI+自定義繪製。那麼,在WPF中,我們怎樣製作一個無邊框窗體呢?答案是將Window的WindowStyl
WPF圓角透明無邊框窗體
<Window x:Class="ImportData.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.micr
WPF 下無邊框窗體改變大小和移動
最近一直在學習 WPF,看著別人做的WPF程式那麼漂亮,眼紅啊~ 很多漂亮的程式都是無邊框的。於是無邊框視窗操作就是最重要的了。無邊框視窗的操作一直以來相關的資料就很少。WPF 下的就更少了,有的大多是無邊框窗體的移動。在得到群裡高人的指點,再查了一些資料之
QT 無邊框窗體最大化 遮擋windows工作列的問題
最近寫的一個基於QT的程式的UI,要求整個窗體的風格渾然一體。包括窗體的邊框什麼的。這個其實定義了QSS啥的就沒什麼複雜的了,純粹體力活了。但是如果想整體制定一個窗體的話就需要讓窗體的屬性是無邊框(frameless)的。只有這樣才能徹底的脫離windows的窗體管理器。才能
【WPF無邊框窗體】
WPF是Windows作業系統中一次重大變革,與早期的GDI+/GDI不同。 WPF是基於DirectX引擎的,支援GPU硬體加速,在不支援硬體加速時也可以使用軟體繪製。 利用WPF建立無邊框的窗體: 第一種方式:設定WindowStyle="None" AllowsTr
Qt學習筆記:無邊框窗體的移動
類似360安全衛士介面, 滑鼠只能夠在綠色的位置進行點選和移動,這就是採用Qt實現的無邊框窗體的移動。 其實實現無邊框窗體的移動主要是靠以下三個函式: void mousePres
C# WinForm開發系列之自定義無邊框窗體(最大化,最小化,關閉,拉伸和移動的相關知識)
////重寫系統WndProc函式,使無邊框窗體可移動 protected override void WndProc(ref Message m) { switch (m.Msg) {
c# 無邊框窗體的邊框陰影
Windows API: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Li
c#禁止雙擊最大化,無邊框窗體移動
轉載的,不是特別懂,以後再看 protected override void WndProc(ref Message m) { switch (m.Msg) { case 0x84: base.WndProc(ref m);
WPF 呼叫API修改窗體風格實現真正的無邊框窗體
public class NativeMethods { /// <summary> /// 帶有外邊框和標題的windows的樣式 /// </summary> public const long WS_
Qt無邊框窗體-最大化時支援拖拽還原
目錄 一、概述 二、效果展示 三、demo製作 1、設計窗體 2、雙擊放大 四、拖拽 五、相關文章 原文連結:M
winform無邊框窗體點擊任務欄最小化
mini spa inf clas style cte color con reat protected override CreateParams CreateParams { get {
C# 鼠標點擊移動窗體代碼,可以實現無邊框窗體的拖動
點擊 obj cat += tar sender see sed false private static bool IsDrag = false; private int enterX; private int enterY;
winform 無邊框窗體拖拽實現
sed style windows part fse use left clas void using System; using System.Collections.Generic; using System.ComponentModel; using Syst
WPF一步步實現完全無邊框自定義Window(附源碼)
nbsp interop -c 思路 pan cit 最終 auto pre 在我們設計一個軟件的時候,有很多時候我們需要按照美工的設計來重新設計整個版面,這當然包括主窗體,因為WPF為我們提供了強大的模板的特性,這就為我們自定義各種空間提供了可能性,這篇博客主要用來
pyqt5_控件_自定義無邊框窗體拖動
spa 窗體拖動 ica 定義 event sta track gets button from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import * import sy
C#WinForm無邊框窗體移動方法、模仿鼠標單擊標題欄移動窗體位置
發送 mage log sin mes win sender src using C#WinForm無邊框窗體移動方法、模仿鼠標單擊標題欄移動窗體位置 這裏介紹倆種辦法 方法一:直接通過修改窗體位置從而達到移動窗體的效果 方法二:直接偽裝發送單擊任務欄消息,讓應用程序
關於自定義的Qt無邊框窗體
現在桌面軟體的設計風格已經偏向於扁平化了。那麼基於Qt開發的桌面應用也會常常被提出扁平化無邊框的需求。怎麼去掉應用程式旁邊土到渣的邊框呢?本文應該可以幫到你。 QT += core gui greaterThan(QT_MA