欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實(shí)現(xiàn)ESC退出窗口的三種方法

 更新時(shí)間:2025年08月11日 09:51:08   作者:火星papa  
文章介紹了在VS2019環(huán)境下,通過(guò)同步按鈕法、監(jiān)聽(tīng)按鍵法和隱藏按鈕法三種方式實(shí)現(xiàn)ESC鍵關(guān)閉窗體的功能,同步按鈕法是設(shè)置Cancel屬性,監(jiān)聽(tīng)按鍵法涉及KeyPress或KeyDown事件,隱藏按鈕法則將退出按鈕尺寸設(shè)為0以隱藏,需要的朋友可以參考下

引言

我們通常用通過(guò)點(diǎn)擊取消按鍵或者右上角的“X”盒子退出的方法來(lái)實(shí)現(xiàn)關(guān)閉當(dāng)前Form窗體。但要使用按鍵ESC退出關(guān)閉窗口就顯得更加高級(jí)了,實(shí)現(xiàn)起來(lái)并不困難,但用戶體驗(yàn)會(huì)提升一個(gè)檔次,這里我講一講我小結(jié)的幾個(gè)方法,我用的VS2019。

方法一 同步按鈕法

  • 我所謂的同步按鈕也就是我們本來(lái)就有一個(gè)退出或者取消的按鍵,我只要有這個(gè)按鍵的退出事件,那么我們就直接可以利用這個(gè)按鍵的事件就可以了,這個(gè)方法在VS中的屬性中就已經(jīng)設(shè)計(jì)好了,所以這個(gè)方法最為簡(jiǎn)單,完全沒(méi)有難度可言。

1、首先要有一個(gè)可以單擊退出的按鍵,在你建立的窗體中添加一個(gè)按鍵即可,添加最簡(jiǎn)單的退出代碼。

   public partial class Form_test : Form
    {
        public Form_test()
        {
            InitializeComponent();
        }

        private void button_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }

2、其次只有設(shè)置窗體屬性了,有了之前的事件(button_exit_Click),我們就可以將取消按鍵的定義為我們的退出事件。如下圖,我們將CancelButton選擇成我們的button_exit按鍵控件,完成。

方法二 監(jiān)聽(tīng)按鍵法

顧名思義,實(shí)時(shí)監(jiān)聽(tīng)按鍵按下,新建一個(gè)KeyPress事件或者KeyDown事件,單檢測(cè)到ESC按鍵按下時(shí),就執(zhí)行關(guān)閉的動(dòng)作,大家很快就聯(lián)想到了,這里使用其它的自定義按鍵都是可以的。這個(gè)方法的優(yōu)點(diǎn)就是不需要有控件button的存在,那么,就需要使用代碼來(lái)描述監(jiān)聽(tīng)的按下動(dòng)作。
1、這里的第一步是將屬性KeyPreview設(shè)置為true,這一步最為關(guān)鍵容易遺漏。當(dāng)然使用代碼直接設(shè)置也完全沒(méi)有問(wèn)題。

2、將鍵盤按鍵觸發(fā)事件代碼加入,下面的兩種事件方法都可以(KeyPress或KeyDown)。

        private void Form_test_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)Keys.Escape)//按下ESC //27
            {
                this.Close();
            }
        }


       private void Form_ConfigPaParam_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Escape)
            {
                this.Close();
            }
        }

方法三 隱藏按鈕法

  • 這個(gè)同第一個(gè)方法的原理基本一致,同樣是利用已經(jīng)存在的button。但是區(qū)別是按鍵被隱藏了,這是一種另辟蹊徑的偏門方法,不常用。 需要注意的是,要將button控件的size變成0,0,也就是沒(méi)有尺寸,避免顯示出來(lái),有人問(wèn),可以關(guān)掉visible來(lái)隱藏嗎?大家可以試一試哦!

最后

方法總比困難多,條條大路通羅馬。

到此這篇關(guān)于C#實(shí)現(xiàn)ESC退出窗口的三種方法的文章就介紹到這了,更多相關(guān)C# ESC退出窗口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • WPF實(shí)現(xiàn)能自由改變形狀的四邊形和六邊形

    WPF實(shí)現(xiàn)能自由改變形狀的四邊形和六邊形

    這篇文章主要為大家詳細(xì)介紹了WPF如何實(shí)現(xiàn)能自由改變形狀的四邊形和六邊形,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-03-03
  • C#實(shí)現(xiàn)為視頻添加水印

    C#實(shí)現(xiàn)為視頻添加水印

    這篇文章主要為大家詳細(xì)介紹了C#如何使用ffmpeg命令,分別實(shí)現(xiàn)給視頻添加圖片水印以及文字水印,文中的示例代講解詳細(xì),感興趣的可以了解一下
    2023-01-01
  • C# memcache 使用介紹

    C# memcache 使用介紹

    這篇文章主要介紹了C# memcache 使用介紹,需要的朋友可以參考下
    2015-05-05
  • C#?WPF調(diào)用QT窗口的方法

    C#?WPF調(diào)用QT窗口的方法

    本文主要介紹了C#?WPF調(diào)用QT窗口的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C#調(diào)用SQLite的方法實(shí)例分析

    C#調(diào)用SQLite的方法實(shí)例分析

    這篇文章主要介紹了C#調(diào)用SQLite的方法,較為詳細(xì)的介紹了SQLite的功能與特點(diǎn),并實(shí)例分析了C#調(diào)用SQLite的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • C# 創(chuàng)建高精度定時(shí)器的示例

    C# 創(chuàng)建高精度定時(shí)器的示例

    這篇文章主要介紹了C# 創(chuàng)建高精度定時(shí)器的示例,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#中Serializable序列化實(shí)例詳解

    C#中Serializable序列化實(shí)例詳解

    這篇文章主要介紹了C#中Serializable序列化,以實(shí)例形式詳細(xì)講述了系列化的技術(shù)及各種序列化方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-11-11
  • c#如何獲取json數(shù)組里指定參數(shù)

    c#如何獲取json數(shù)組里指定參數(shù)

    這篇文章主要介紹了c#如何獲取json數(shù)組里指定參數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • C#調(diào)用OpenXml讀取excel行數(shù)據(jù)

    C#調(diào)用OpenXml讀取excel行數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了C#如何調(diào)用OpenXml實(shí)現(xiàn)讀取excel行數(shù)據(jù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-12-12
  • C#學(xué)習(xí)筆記- 淺談數(shù)組復(fù)制,排序,取段,元組

    C#學(xué)習(xí)筆記- 淺談數(shù)組復(fù)制,排序,取段,元組

    下面小編就為大家?guī)?lái)一篇C#學(xué)習(xí)筆記- 淺談數(shù)組復(fù)制,排序,取段,元組。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-08-08

最新評(píng)論