关于Excel操作编写的一个软件设计构思案例[连载]
最近緊急開發(fā)一個(gè)操作Excel文檔軟件,經(jīng)過大約5天左右不懈努力,終于完成。
先上2張圖看看界面:
這是為從一串字符中提取地址而緊急設(shè)計(jì),邊使用邊開發(fā),軟件雖小而且簡單,可是并非開始構(gòu)思的那樣簡單想法:只要提取需要字符出來填到對應(yīng)單元格內(nèi)就可以導(dǎo)入數(shù)據(jù)庫了,而是,隨著基本功能的實(shí)現(xiàn),發(fā)現(xiàn)可以讓程序做更多的工作,從而擴(kuò)展的功能也隨之開發(fā),而且是越開發(fā)越多,最后,菜單竟然有十幾項(xiàng)。
使用控件不多:2個(gè)DataGridView,一個(gè)Treeview,2個(gè)splitContainer構(gòu)成主界面元素。
其中樹和顯示數(shù)據(jù)代碼都是使用發(fā)布過的直接應(yīng)用,所以,可以快速完成開發(fā)工作。
設(shè)計(jì)完成之余,隨手玩玩手動(dòng)添加樹節(jié)點(diǎn)和多維數(shù)組,組成一個(gè)自定義表,該表用于生成一顆樹,如上2圖所示,先發(fā)代碼如下:
/**/地址分類樹.Nodes.Add("極樂世界");地址分類樹.Nodes[0].Nodes.Add("佛");地址分類樹.Nodes[0].Nodes[0].Nodes.Add("阿彌陀");地址分類樹.Nodes[0].Nodes[0].Nodes[0].Nodes.Add("菩薩");地址分類樹.Nodes[0].Nodes[0].Nodes[0].Nodes.Add("圣眾");地址分類樹.Nodes[0].Nodes[0].Nodes[0].Nodes[0].Nodes.Add("觀世音");地址分類樹.Nodes[0].Nodes[0].Nodes[0].Nodes[0].Nodes.Add("大勢至");地址分類樹.Nodes[0].Nodes[0].Nodes[0].Nodes[1].Nodes.Add("無量");地址分類樹.Nodes.Add("娑婆世界");地址分類樹.Nodes[1].Nodes.Add("劫名");地址分類樹.Nodes[1].Nodes[0].Nodes.Add("莊嚴(yán)");地址分類樹.Nodes[1].Nodes[0].Nodes.Add("賢");地址分類樹.Nodes[1].Nodes[0].Nodes[0].Nodes.Add("佛");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes.Add("佛");地址分類樹.Nodes[1].Nodes[0].Nodes[0].Nodes[0].Nodes.Add("毗婆尸");地址分類樹.Nodes[1].Nodes[0].Nodes[0].Nodes[0].Nodes.Add("尸棄");地址分類樹.Nodes[1].Nodes[0].Nodes[0].Nodes[0].Nodes.Add("毗舍浮");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes.Add("拘留孫");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes.Add("拘那含牟尼");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes.Add("迦葉");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes.Add("釋迦牟尼");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes.Add("菩薩");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes.Add("祖師");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("觀世音");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("大勢至");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("文殊");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("普賢");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("地藏");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[0].Nodes.Add("彌勒");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("摩訶迦葉");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("阿難");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("商那和修");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("優(yōu)波毱多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("提多迦");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("彌遮迦");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("婆須蜜多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("佛馱難提");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("伏馱蜜多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("脇");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("富那夜奢");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("馬嗚");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("迦毗摩羅");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("龍樹");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("迦那提婆");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("羅睺羅多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("僧伽難提");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("伽耶舍多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("鳩摩羅多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("阇耶多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("婆修盤頭");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("摩拏羅");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("鶴勒那");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("師子");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("婆舍斯多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("不如蜜多");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("般若多羅");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("菩提達(dá)摩");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("慧可");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("僧璨");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("道信");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("弘忍");地址分類樹.Nodes[1].Nodes[0].Nodes[1].Nodes[0].Nodes[3].Nodes[1].Nodes.Add("慧能");地址分類樹.ExpandAll();
上面是手動(dòng)添加,下面發(fā)如何把上面這些信息構(gòu)成一個(gè)表,以及用這個(gè)表去生樹:
之后將逐步發(fā)代碼和講解軟件構(gòu)思和設(shè)計(jì)具體細(xì)節(jié),以及一些細(xì)節(jié)設(shè)計(jì)的理由和判斷條件限制,做為一個(gè)案例,當(dāng)然,知道自己水平有限,只是看新學(xué)提問就多,故此發(fā)布,僅資參考,拋磚引玉而已。
總結(jié)
以上是生活随笔為你收集整理的关于Excel操作编写的一个软件设计构思案例[连载]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kafka中steamAPi操作
- 下一篇: jackd android 2018,2