桌面英語(上班摸魚記單詞)是一個(gè)桌面的窗體程序,在一定頻率下切換單詞,幫助利用碎片化的時(shí)間記單詞。方便上班的時(shí)候摸魚劃水。顯示單詞的解釋和讀音,可以發(fā)出美式讀音和英式讀音。
軟件說明
一直以來沒有找到好的單詞詞典接口,這一次是將模擬網(wǎng)頁請求必應(yīng)詞典,從返回來的網(wǎng)頁中利用正則表達(dá)式解析出需要詞典資源。(廢老大勁了,正則表達(dá)式是真的煩,非逼的自已去好好學(xué)了下子),然后再將字符串做格式化處理。 使用了兩層窗體,第一層是使用 TransparencyKey 屬性來實(shí)現(xiàn)完全的透,第二層是使用 opopacity 屬性來實(shí)現(xiàn)透明。 在第一層窗體上使用GDI+將單詞繪制在窗體上,這個(gè)地方也糾結(jié)了許久,原因是透明窗體上的字體有毛邊,非常的糊,嘗試了很多種解決辦法,最后選中了GDI+繪制,并且設(shè)置了這個(gè):g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.SingleBitPerPixel;效果勉強(qiáng)夠用,第二層窗體主要用來移動和響應(yīng)一些事件。 靈感來源于一個(gè)同類的軟件,后面發(fā)現(xiàn)它不太好用,就想著自己寫一個(gè)好了,自己也可以加入一些定制化的東西,主要自己也有這方面的需求,像是在實(shí)習(xí)的時(shí)候,總看著電腦,又很閑,倒不如利用這些時(shí)間來記單詞,用電腦的時(shí)候是不是的瞟幾眼加深印象。
總結(jié):
使用正則表達(dá)式解析字符串
使用序列化對象的方式保存配置
使用構(gòu)造函數(shù)和委托的方式實(shí)現(xiàn)窗體之間的通信
多個(gè)窗體的協(xié)同
設(shè)置說明
設(shè)置界面可以設(shè)置顯示窗體的樣式,以及切換頻率。
單詞設(shè)置界面設(shè)置循環(huán)的單詞本,可以新建、刪除、重命名等,需要前面勾上鉤才算選中。
使用說明
使用之前需要選定一個(gè)文件夾,里面放入txt文件,
單詞保存在txt文件中,一個(gè)單詞占一行。建議一個(gè)單詞本中的單詞不要太多,五十一百個(gè)左右。
點(diǎn)擊運(yùn)行:desktopEnglish\desktopEnglish\bin\Release\netcoreapp3.1\desktopEnglish.exe
之后在窗體中單擊鼠標(biāo)右鍵,點(diǎn)擊設(shè)置,在單詞設(shè)置中選擇單詞文件夾,文件夾中需要放入.txt文件,文件中一個(gè)單詞占據(jù)一行。也可以選擇 desktopEnglis\單詞 文件夾,其中的 word.txt 為2021考研英語詞匯。