介紹
一個(gè)老同事的小項(xiàng)目要驗(yàn)收怯屉,還差一個(gè)演示程序,我正好閑著呢饵沧,花了將近2個(gè)月的時(shí)間用VC搞出來的锨络。
主要功能:
- 1、項(xiàng)目管理:演示數(shù)據(jù)文件新建狼牺、編輯羡儿、保存、打開
- 2是钥、Grid界面編輯:
增/刪/改
批量插入(區(qū)域三種分布:隨機(jī)掠归、正態(tài)、指數(shù))
數(shù)據(jù)導(dǎo)入/導(dǎo)出
排序 - 3悄泥、圖形界面編輯:
鼠標(biāo)點(diǎn)選插入單個(gè)數(shù)據(jù)
拖拽區(qū)域插入(區(qū)域三種分布:隨機(jī)虏冻、正態(tài)、指數(shù))
鼠標(biāo)點(diǎn)選單個(gè)數(shù)據(jù)點(diǎn)或拖拽選擇多個(gè)數(shù)據(jù)
選中數(shù)據(jù)點(diǎn)拖拽修改
選中數(shù)據(jù)點(diǎn)刪除/復(fù)制 - 4弹囚、算法運(yùn)行演示
K-means和DBSCAN算法
算法執(zhí)行過程動(dòng)態(tài)顯示:數(shù)據(jù)選中厨相、測量、聚類
算法執(zhí)行過程中間數(shù)據(jù)展示
連續(xù)動(dòng)畫鸥鹉、單步執(zhí)行演示
軟件截屏:
-
Grid編輯
-
圖形編輯
-
批量插入
-
K-means算法演示
-
DBSCAN算法演示
設(shè)計(jì)與實(shí)現(xiàn)
作為一個(gè)老程序員蛮穿,以前一直專注于底層應(yīng)用的開發(fā),真正用的得心應(yīng)手的還是C/C++宋舷,有這個(gè)機(jī)會(huì)再用C/C++也很開心绪撵。
這個(gè)小東西本來想用Qt來做,但項(xiàng)目的前期報(bào)告中技術(shù)要求已明確寫了基于VC實(shí)現(xiàn)祝蝠,也就沒辦法了音诈。VC真正有好幾年沒用過了,大概的機(jī)制還沒全忘掉绎狭,但對(duì)一些函數(shù)细溅、方法、接口記憶都比較模糊了儡嘶。做完這個(gè)小東西喇聊,自己認(rèn)為在“時(shí)間緊任務(wù)重”的條件下實(shí)現(xiàn)的還算不錯(cuò)。下面準(zhǔn)備從這幾個(gè)方面介紹下這個(gè)小東西的實(shí)現(xiàn)過程:
- 文件管理:項(xiàng)目數(shù)據(jù)文件結(jié)構(gòu)蹦狂,Doc-View交互
- 整體界面效果:BCG庫使用誓篱,Grid/繪圖界面組合
- 繪圖界面:繪圖工具效果實(shí)現(xiàn)朋贬,ScrollView繪制,基于SpliteWnd的標(biāo)尺實(shí)現(xiàn)
- 算法演示設(shè)計(jì):界面效果設(shè)計(jì)窜骄,算法演示機(jī)制設(shè)計(jì)(狀態(tài)機(jī)锦募,通用基類,單步邻遏,動(dòng)畫任務(wù))
待續(xù)
不知道現(xiàn)在新生代的程序員還有沒有搞VC的了糠亩,估計(jì)很少了吧!Web時(shí)代單機(jī)版的東西太少了准验,如果有人感興趣一塊兒看看吧赎线!