2009年10月8日 星期四

HW1

第一次使用BCB但對介面化程式設計不陌生
因高中學習過VB,所以在撰寫BCB上比較沒有問題並且可以快速進入狀況
不過在轉移到其他電腦要開啟project的時候有點問題
save的時候project、code都有存到
不過從找不到package上來看,應該是lib、bpl沒有複製到
不知道除了帶著Lib跑外,有沒有其他的解決辦法?


相較於VB與BCB,除了介面中英文的差異外
BCB是C++的一種,因此撰寫格式會相近於C++的模式
所以對我來說初次體驗BCB的感覺便是在VB裡面寫C++ ~


第一次作業牛刀小試
撰寫步驟不複雜,沒有什麼問題
但是開檔讀檔過去VB比較沒有操作,因此我還蠻有興趣的


首先建立一個MainMenu來開啟Image檔案
以OpenPictureDialog彈出開啟檔案的方框
這裡我配合if做是否成功開啟的判斷
預防說開啟的檔案有問題或是按取消造成的程式中斷
接著以LoadFromFile將選擇的檔案路徑assign給Image元件顯示讀入的BMP


然後第二部分
以Events設定當滑鼠移過Image時要顯示出以下資訊
指標於Image內的X,Y座標還有該位置的R,G,B色彩值分析
這步驟也很容易,座標利用MouseMove預設好的X,Y引數
而讀取R,G,B數值也有內建的function可以呼叫使用
再把讀到的值透過Label來顯示即可


第三部分是繪圖的處理
因為過去沒有處理過類似的功能,一開始還擔心會很麻煩
這回就讓我見識到了,BCB強大的元件組,可以叫出調色盤
而UI的程式書籍一定會提到的畫圖功能也是第一次嘗試
(過去根本用不到畫圖,也沒想過要用,不管是畫圓、畫線、畫曲線)
用Events的滑鼠Click來撰寫左鍵直線起點,右鍵終點
然後Button Color則call出調色盤來改Pen color



以下是程式執行畫面
開啟圖檔 : File > Open
click滑鼠左鍵定位 、 click滑鼠右鍵拉線
























然後點Color可以變換色彩






















完成作業的要求後,另外自己加了點東西
當指標由Image元件移動出了元件後
Label顯示的資訊會留下在元件內時的資訊
就想順手改看看讓指標出了Image方框資訊就消失

做法也很簡單不用多做考慮,反向思考推說
當指標離開Image元件就是進入Form內
那只要指標進入Form時依樣畫葫蘆以MouseMove處理讓Label變空值

compile後一run
就如預期的一樣,成為一個比較合乎直覺邏輯的程式~
然後就Click自己建立的Exit Button關閉程式囉

以上~ 另外我覺得BCB的程式不大穩定,有時候會不知名的失控....

沒有留言:

張貼留言