Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Sự kiện ấn nút Minimize ?

  1. #1
    Ngày gia nhập
    11 2007
    Bài viết
    22

    Mặc định Sự kiện ấn nút Minimize ?

    Xin hỏi mình muốn bắt sự kiện ấn nút Minimize thì làm như thế nào ?

  2. #2
    Ngày gia nhập
    10 2007
    Nơi ở
    /root
    Bài viết
    318

    Bạn có thể bắt sự kiến nhấn các nút Minimize, Maxmize thông qua WM_SIZE Notification

    WM_SIZE Notification

    The WM_SIZE message is sent to a window after its size has changed.

    A window receives this message through its WindowProc function.

    Syntax
    WM_SIZE

    WPARAM wParam
    LPARAM lParam;


    Parameters
    wParam
    Specifies the type of resizing requested. This parameter can be one of the following values.
    SIZE_MAXHIDE
    Message is sent to all pop-up windows when some other window is maximized.
    SIZE_MAXIMIZED
    The window has been maximized.
    SIZE_MAXSHOW
    Message is sent to all pop-up windows when some other window has been restored to its former size.
    SIZE_MINIMIZED
    The window has been minimized.
    SIZE_RESTORED
    The window has been resized, but neither the SIZE_MINIMIZED nor SIZE_MAXIMIZED value applies.
    lParam
    The low-order word of lParam specifies the new width of the client area.

    The high-order word of lParam specifies the new height of the client area.

    Return Value

    If an application processes this message, it should return zero

    Xem thêm tại đây :http://msdn2.microsoft.com/en-us/library/ms632646.aspx

    Ví dụ , bạn bắt sự kiện click Minimize button ,biến nó thành Close button :
    PHP Code:
    LRESULT CALLBACK WndProc (HWND hwndUINT messageWPARAM wParamLPARAM lParam)
    {
        switch (
    message)
        {
        case 
    WM_SIZE:
            switch(
    wParam)
            {
            case 
    SIZE_MINIMIZED:
                
    PostQuitMessage(0);
                break;
            }
            return (
    0);
        case 
    WM_CREATE:
            return (
    0);
            
        case 
    WM_PAINT:
            return (
    0);
            
        case 
    WM_DESTROY:
            
    PostQuitMessage (0);
            return (
    0);
        }
        return 
    DefWindowProc (hwndmessagewParamlParam);

    Đã được chỉnh sửa lần cuối bởi Tab : 03-03-2008 lúc 10:11 PM.

  3. #3
    Ngày gia nhập
    11 2007
    Bài viết
    22

    Hix, đọc bài post của void main() mình chả hiểu gì hết . Bạn có thể nói rõ hơn cho mình không. Thanks nhiều.

  4. #4
    Ngày gia nhập
    10 2007
    Bài viết
    169

    Bạn dùng cái này thử xem:
    Code:
    void CTestDlg::OnSysCommand(UINT nID, LPARAM lParam)
    {
    	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
    	{
    		CAboutDlg dlgAbout;
    		dlgAbout.DoModal();
    	}
    	else
    	{
    		CDialog::OnSysCommand(nID, lParam);
    		if (nID == SC_MINIMIZE) 	// Minimize button's clicked
    		{
    			// Code here...!
    		}
    	}
    }
    Bạn xem thêm trong MSDN về hàm "OnSysCommand", có đầy đủ hết đó!

Các đề tài tương tự

  1. Trả lời: 3
    Bài viết cuối: 11-04-2012, 09:26 AM
  2. tạo button minimize như thế nào vậy
    Gửi bởi tuonghieu1213 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 29-04-2011, 08:35 PM
  3. Làm sao Retore 1 Ứng dụng sau khi đã Minimize
    Gửi bởi baotran trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 21-07-2010, 09:27 AM
  4. gặp vấn đề xử lý thông điệp Minimize trong MFC
    Gửi bởi vietsanto trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 19-06-2010, 10:03 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn