需要无边框效果不要设置为bsNone但systemmenu不好整回来麻烦麻烦你什么都想要着又有很多东西想不要哎……@_@

解决方案 »

  1.   

    不设成bsnone怎么才能办法?有高手来看看吗?
      

  2.   


    你试试看,nero的原码!!重载WndProc来处理消息!!
    void __fastcall TNeoForm::WndProc(Messages::TMessage &Message)
    {
      inherited::WndProc(Message);
      switch (Message.Msg)
      {
        case WM_SIZE:
          switch (Message.WParam)
          {
            case SIZE_MAXIMIZED:
            {
              if (BorderIcons.Contains(biMaximize))
              {
                MaxImage->Visible = false;
                RestoreImage->Visible = true;
              }
              SetSizeableCursor(false);
              break;
            }
            case SIZE_MINIMIZED:
              break;
            case SIZE_RESTORED:
            {
              if (BorderIcons.Contains(biMaximize))
              {
                MaxImage->Visible = true;
                RestoreImage->Visible = false;
              }
              SetSizeableCursor(FSizeable);
              break;
            }
          }//switch (Message.wParam)
          break;    case WM_ACTIVATE:
          switch (Message.WParamLo)
          {
            case WA_ACTIVE:
            case WA_CLICKACTIVE:
            {
              TopLeftImage->Picture = GetFTopLeftImage->Picture;
              TopCenterImage->Picture = GetFTopCenterImage->Picture;
              TopRightImage->Picture = GetFTopRightImage->Picture;
              TopPanel->Refresh();
              break;
            }
            case WA_INACTIVE:
            {
              MenuTimer->Enabled = false;
              TopLeftImage->Picture = LostFTopLeftImage->Picture;
              TopCenterImage->Picture = LostFTopCenterImage->Picture;
              TopRightImage->Picture = LostFTopRightImage->Picture;
              break;
            }
          }
        break;
      }
    }