我的小軟體想實現這樣乙個功能
登陸前,我希望只有
帳戶 幫助 這兩個選單項,帳戶選單有註冊和登陸兩個彈出選單 ,登陸以後,其他選單才全部出來。
但是這樣生成的選單並沒有命令處理機制,解決的辦法是過載oncmdmsg函式
然後根據選單id用switch方式選擇執行函式。
總是感覺這種方法很別拗。
當然可以一開始就在資源編輯框內把選單做好,登陸以前把它們的屬性賦成灰色的
這樣實現起來很簡單,但是我更傾向於登陸以後選單才出現這樣的方法。
解決的辦法是在資源編輯器中做好所有的選單,然後用wizzard把選單項和命令函式聯絡起來,就和一般的選單沒有區別。
過載oncreate()函式,把不需要的選單刪去
我的**:
intcmainframe::oncreate(lpcreatestruct lpcreatestruct)
...if(!
m_wndstatusbar.create(
this
) ||
!m_wndstatusbar.setindicators(indicators,
sizeof
(indicators)
/sizeof
(uint)))
...//
todo: delete these three lines if you don't want the ******* to
//be dockable
m_wnd*******.enabledocking(cbrs_align_any);
enabledocking(cbrs_align_any);
dockcontrolbar(
&m_wnd*******);
cmenu
*pmenu
=getmenu();
pmenu
->
deletemenu(
1, mf_byposition);
pmenu
->
deletemenu(
1, mf_byposition);
return0;
}
這樣程式執行的時候
就只有帳戶 幫助 2個選單項
void
...else
...}
else
...}
else
...}
在登陸對話方塊處理函式中,登陸成功以後,再把相應的選單加上去
這樣子,選單的處理函式還是完好的
這種方法比網上大多數介紹的動態選單的方法要直觀,也更加方便
Delphi的動態選單實現
這裡所謂的動態選單是指選單項是變化的,它隨程式的操作變化而變化。例如在很多應用程式的 檔案 選單下列出了最近多少次曾經使用過的檔名,這是最常見的動態選單用法,microsoft word 的 檔案 選單就是一例。動態選單的使用為操作應用程式提供了極大的方便。用 delphi 編寫應用程式我們也可以實...
動態實現樹形選單
樹形選單在開發軟體和 中經常用到,但是會遇到乙個問題,在 中當你點開的時候,由於頁面重新整理了,又合起來來了,這種問題是用iframe不會出現,但是在 中很少會用到框架,最近就碰到了這樣的問題,在網上找了很多js寫的樹形選單,我需要分四級,但是都沒找到合適的,亂七八糟的 都有,很頭疼,沒辦法,自己就...
動態選單 動態建立選單
動態建立選單 windows應用程式的介面,不僅僅是乙個簡單的窗體,每個窗體中都包含具體實現功 能的控制項,包括能夠顯示基本資訊的label控制項,能夠在其中輸入內容的文字框控制項,能 夠設定選項的選擇按鈕控制項等。net提供了很多使用簡單 功能強大的控制項,幫助程式設 計者快速有效地開發應用軟體。...