Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
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 ?
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  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ông cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

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