使用NiftyModeEffects對話方塊,niftymodeeffects

來源:互聯網
上載者:User

使用NiftyModeEffects對話方塊,niftymodeeffects


        最近看到一篇有關個性對話方塊的文章,裡面介紹了非常酷的動畫效果,開源的項目下載來試試,用法很簡單。

       NoftyDialogEffects效果參考:
       http://tympanus.net/Development/ModalWindowEffects/
       具體使用方法可以參考demo,我把NiftyDialogEffects和NiftyNotification整合到一起,需要的盆友可以下載來看看。

       :http://pan.baidu.com/s/1mgqSfXY


怎在一個對話方塊中使用另一個對話方塊中的變數

如果變數不在類中,那麼在另一個對話方塊的cpp中定義extern CString m_path;然後就可以訪問了!

如果變數在類中,那麼設對話方塊A,對話方塊B
CString m_path在A的類裡面

那麼首先在A類中添加一個友元傳參函數,比如PassParam(LPVOID lpParam), 然後在B類中添加一個public變數,比如CString m_path_in_A)。

然後在對話方塊B中調用A對話方塊,並且要在B中訪問A類裡的m_path,那麼
void B::OnOpenWindowA()
{
A dlgA;
A.PassParam(this);
A.DoModal();
//之後B類裡的m_path_in_A就是B類裡的m_path的內容了,你也就可以訪問了!
}

對於A類裡的PassParam(LPVOID lpParam):
void PassParam(LPVOID lpParam)
{
B *dlgB = lpParam;
dlgB->m_path_in_A = m_path;
}

光是把變數設為public是不行的,我給你詳細解釋一下!
假如m_path在A類中,那麼你如果要在B類中使用A類,那麼就一定要:
A xxx; //xxx為變數名
然後A.yyy; //yyy為A類中的成員
這樣看似可以,但是第一局A xxx;的意思是定義變數,這句執行後,xxx內的內容是A類建構函式之後的內容,裡面絕對不包含你想要的m_path的真實值!此時只有用指標A *xxx=yyy;才行!但是在B類向A類傳遞參數的時候,如果你使用了new之類的運算子,也就相當於A xxx一樣,也不會得到期望的東西,唯獨只有傳遞this才可以!一定要this!而傳參函數要傳this而不導致變數重定義,就絕對不能在類裡面,所以傳參函數一定要是友元函數!

明白了吧!
 
使用MFC實現模態對話方塊

1:“使用資源在主介面添加按鈕,"IDC_CREATE_DIALOG"用來建立模態對話方塊”這句話是說,建立一個ID為IDC_CREATE_DIALOG的按鈕,不是按鈕名字為“IDC_CREATE_DIALOG”的按鈕。
2:右鍵選擇插入資源,或者單擊“插入”菜單,選擇插入資源。彈出一個插入資源的對話方塊,然後添加一個對話方塊資源,添加了之後再修改它的ID。
3:在新添加的對話方塊資源上雙擊,添加一個類。選擇基類為CDiglog。
4:在按鈕上雙擊添加代碼。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.