⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdmenu.h

📁 邮 电 公 司 erp源码
💻 H
字号:
//---------------------------------------------------------------------------
#ifndef sdMenuH
#define sdMenuH
#include "ImagePanel.hpp"
#include <Controls.hpp>
#include "func.h"
#include "sdTask.h"
//---------------------------------------------------------------------------
class __declspec(dllexport) TsdMenu;
class __declspec(dllexport) TsdSubMenu;
class __declspec(dllexport) TsdNavArrow;
class __declspec(dllexport) TsdNavpic;
class __declspec(dllexport) TsdMenuItem;

class TsdMenuItem
{
private:
    TsdCollection *m_MenuItem;

    AnsiString m_ItemCode;
    int        m_ItemLib;
    AnsiString m_ItemUpperCode;
    AnsiString m_ItemCaption;
    AnsiString m_ItemDesc;
    AnsiString m_ItemFormName;
    int        m_ItemNo;
    int        m_RightLevel;
    int        m_ItemNeedCheck;
    void Assign(TsdMenuItem *p);
    int GetMenuItemCount();
    
public:
    TsdSubMenu *sdParent;
    void AddMenuItem();
    bool LocateByIndex(int Index);
    bool LocateByKey(AnsiString Key);
    TsdMenuItem();
    ~TsdMenuItem();
    
    __property AnsiString ItemCode  = { read = m_ItemCode, write = m_ItemCode };
    __property int        ItemLib = {read=m_ItemLib,write=m_ItemLib};
    __property AnsiString ItemUpperCode  = { read = m_ItemUpperCode, write = m_ItemUpperCode };
    __property AnsiString ItemCaption  = { read = m_ItemCaption, write = m_ItemCaption };
    __property AnsiString ItemDesc  = { read = m_ItemDesc, write = m_ItemDesc };
    __property AnsiString ItemFormName = { read = m_ItemFormName, write = m_ItemFormName };
    __property int ItemNo  = { read = m_ItemNo, write = m_ItemNo };
    __property int RightLevel  = { read = m_RightLevel, write = m_RightLevel };
    __property int ItemNeedCheck = { read = m_ItemNeedCheck, write = m_ItemNeedCheck };
    __property int MenuItemCount={read=GetMenuItemCount};
};



class TsdSubMenu
{
private:
    TsdCollection *m_Child;
    TsdMenuItem   *m_MenuItem;
    TPanel        *m_SubMenuPanel;
    TsdTask       *m_Task;
    int           m_FirstIndex;
    int           m_cVisNum;
    AnsiString    m_SubMenuMoveLeftPic;
    AnsiString    m_SubMenuMoveRightPic;

    TSpeedButton  *m_sbLeft;
    TSpeedButton  *m_sbRight;

    TImagePanel   *m_ImagePanel;
    int           m_Top;
    int           m_Height;
    int           m_Width;
    int           m_HStep;
    int           m_Space;
    
    AnsiString    m_SubMenuCode;
    AnsiString    m_SubMenuUpperCode;
    AnsiString    m_SubMenuCaption;
    AnsiString    m_SubMenuDesc;
    int           m_SubMenuNo;
    AnsiString    m_SubMenuPicName;
    AnsiString    m_SubMenuSelPicName;
    int           m_RightLevel;

    void Assign(TsdSubMenu * p);
    void __fastcall SetMenuItemCode(AnsiString value);
    AnsiString __fastcall GetMenuItemCode();
    void __fastcall SetMenuItemLib(int value);
    int __fastcall GetMenuItemLib();
    void __fastcall SetMenuItemUpperCode(AnsiString value);
    AnsiString __fastcall GetMenuItemUpperCode();
    void __fastcall SetMenuItemCaption(AnsiString value);
    AnsiString __fastcall GetMenuItemCaption();
    void __fastcall SetMenuItemDesc(AnsiString value);
    AnsiString __fastcall GetMenuItemDesc();
    void __fastcall SetMenuItemNo(int value);
    int __fastcall GetMenuItemNo();
    void __fastcall SetMenuItemRightLevel(int value);
    int __fastcall GetMenuItemRightLevel();
    int __fastcall GetSubMenuCount();
    AnsiString __fastcall GetMenuItemFormName();
    void __fastcall SetMenuItemFormName(AnsiString value);
    int __fastcall GetMenuItemNeedCheck();
    void __fastcall SetMenuItemNeedCheck(int value);
public:
    TsdSubMenu(TPanel *FPanel,TsdTask *p);
    ~TsdSubMenu();
    TsdMenu *sdParent;

    void HideSubMenu();
    void ShowSubMenu();
    void ShowNextPageMenu();
    void ShowPriorPageMenu();
    bool LocateByIndex(int Index);
    bool LocateByKey(AnsiString Key);
    void AddSubMenu();
    void AddMenuItem();
    bool LocateItemByIndex(int Index);
    bool LocateItemByKey(AnsiString Key);
    void __fastcall SubMenuClick(TObject *Sender);
    void __fastcall SubMenuItemClick(TObject *Sender, int Index);
    void __fastcall SubMenuMoveLeftClick(TObject * Sender);
    void __fastcall SubMenuMoveRightClick(TObject * Sender);

    __property TsdMenuItem *MenuItem={read=m_MenuItem};
    __property AnsiString SubMenuCode  = { read = m_SubMenuCode, write = m_SubMenuCode };
    __property AnsiString SubMenuUpperCode = { read = m_SubMenuUpperCode, write = m_SubMenuUpperCode };
    __property AnsiString SubMenuCaption  = { read = m_SubMenuCaption, write = m_SubMenuCaption };
    __property AnsiString SubMenuDesc  = { read = m_SubMenuDesc, write = m_SubMenuDesc };
    __property int SubMenuNo  = { read = m_SubMenuNo, write = m_SubMenuNo };
    __property int RightLevel  = { read = m_RightLevel, write = m_RightLevel };
    __property AnsiString SubMenuPicName  = { read = m_SubMenuPicName, write = m_SubMenuPicName };
    __property AnsiString SubMenuSelPicName  = { read = m_SubMenuSelPicName, write = m_SubMenuSelPicName };
    __property int Top  = { read = m_Top, write = m_Top };
    __property int Width  = { read = m_Width, write = m_Width };
    __property int Height  = { read = m_Height, write = m_Height };
    __property int HStep  = { read = m_HStep, write = m_HStep };
    __property AnsiString MenuItemCode  = { read = GetMenuItemCode, write = SetMenuItemCode };
    __property int MenuItemLib  = { read = GetMenuItemLib, write = SetMenuItemLib };
    __property AnsiString MenuItemUpperCode  = { read = GetMenuItemUpperCode, write = SetMenuItemUpperCode };
    __property AnsiString MenuItemCaption  = { read = GetMenuItemCaption, write = SetMenuItemCaption };
    __property AnsiString MenuItemDesc  = { read = GetMenuItemDesc, write = SetMenuItemDesc };
    __property AnsiString MenuItemFormName = {read=GetMenuItemFormName,write=SetMenuItemFormName};
    __property int MenuItemNo  = { read = GetMenuItemNo, write = SetMenuItemNo };
    __property int MenuItemRightLevel  = { read = GetMenuItemRightLevel, write = SetMenuItemRightLevel };
    __property AnsiString SubMenuMoveLeftPic={read =m_SubMenuMoveLeftPic,write=m_SubMenuMoveLeftPic};
    __property AnsiString SubMenuMoveRightPic={read =m_SubMenuMoveRightPic,write=m_SubMenuMoveRightPic};
    __property int SubMenuCount={read=GetSubMenuCount};
    __property int MenuItemNeedCheck={read=GetMenuItemNeedCheck,write=SetMenuItemNeedCheck};

};

class TsdNavArrow
{
private:
  TsdCollection *m_sdNavArrows;
  TImage        *m_Image;
  AnsiString m_NavArrowModule;
  AnsiString m_NavArrowCode;
  int        m_NavArrowStyle;
  int        m_NavArrowDir;
  int        m_NavArrow3D;
  int        m_NavArrowX1;
  int        m_NavArrowY1;
  int        m_NavArrowX2;
  int        m_NavArrowY2;
  int        m_NavArrowAngle;
  AnsiString m_NavArrowColor;

  void Assign(TsdNavArrow * p);
  int GetNavArrowCount();

public:
  TsdNavArrow(TImage *FImage);
  ~TsdNavArrow();
  TsdMenu *sdParent;

  void ShowNavArrow();
  void HideNavArrow();
  void LocateByIndex(int Index);
  void LocateByKey(AnsiString Key);
  void AddNavArrow();

  __property AnsiString NavArrowModule={read=m_NavArrowModule,write=m_NavArrowModule};
  __property AnsiString NavArrowCode={read=m_NavArrowCode,write=m_NavArrowCode};
  __property int NavArrowStyle={read=m_NavArrowStyle,write=m_NavArrowStyle};
  __property int NavArrowDir={read=m_NavArrowDir,write=m_NavArrowDir};
  __property int NavArrow3D={read=m_NavArrow3D,write=m_NavArrow3D};
  __property int NavArrowX1={read=m_NavArrowX1,write=m_NavArrowX1};
  __property int NavArrowY1={read=m_NavArrowY1,write=m_NavArrowY1};
  __property int NavArrowX2={read=m_NavArrowX2,write=m_NavArrowX2};
  __property int NavArrowY2={read=m_NavArrowY2,write=m_NavArrowY2};
  __property int NavArrowAngle={read=m_NavArrowAngle,write=m_NavArrowAngle};
  __property AnsiString NavArrowColor={read=m_NavArrowColor,write=m_NavArrowColor};
  __property int Count={read=GetNavArrowCount};

};

class TsdNavpic
{
private:
  TsdCollection *m_sdNavpics;
  TsdTask       *m_Task;
  TForm         *m_ParentForm;
  TImagePanel   *m_ImagePanel;
  AnsiString m_NavpicModule;
  AnsiString m_NavpicCode;
  int        m_NavpicLib;
  AnsiString m_NavpicCaption;
  AnsiString m_NavpicFormName;
  AnsiString m_NavpicPath;
  int m_NavpicLeft;
  int m_NavpicTop;
  int m_NavpicHeight;
  int m_NavpicWidth;
  int m_NavpicRight;
  void Assign(TsdNavpic * p);
  int GetNavpicCount();
public:
  TsdNavpic(TForm *FForm,TsdTask *FTask);
  ~TsdNavpic();
  TsdMenu *sdParent;
  
  void ShowNavigator();
  void HideNavigator();
  void LocateByIndex(int Index);
  void LocateByKey(AnsiString Key);
  void AddNavpic();
  void __fastcall NavpicClick(TObject *Sender);

  __property AnsiString NavpicModule={read=m_NavpicModule,write=m_NavpicModule};
  __property AnsiString NavpicCode={read=m_NavpicCode,write=m_NavpicCode};
  __property int        NavpicLib={read=m_NavpicLib,write=m_NavpicLib};
  __property AnsiString NavpicCaption={read=m_NavpicCaption,write=m_NavpicCaption};
  __property AnsiString NavpicFormName={read=m_NavpicFormName,write=m_NavpicFormName};
  __property AnsiString NavpicPath={read=m_NavpicPath,write=m_NavpicPath};
  __property int NavpicLeft={read=m_NavpicLeft,write=m_NavpicLeft};
  __property int NavpicTop={read=m_NavpicTop,write=m_NavpicTop};
  __property int NavpicHeight={read=m_NavpicHeight,write=m_NavpicHeight};
  __property int NavpicWidth={read=m_NavpicWidth,write=m_NavpicWidth};
  __property int NavpicRight={read=m_NavpicRight,write=m_NavpicRight};
  __property int Count={read=GetNavpicCount};

};


class TsdMenu
{
private:
    TsdCollection *m_Parent;
    TsdTask       *m_Task;
    TPanel        *m_MenuPanel;
    TPanel        *m_SubMenuPanel;
    TForm         *m_NavpicForm;
    Graphics::TBitmap       *m_Bitmap;
    int           m_pVisNum;  //可视主菜单数
    int           m_cVisNum;  //可视子菜单数
    int           m_Selected; //菜单是否被选取
    int           m_FirstIndex;
    TShape        *m_BlackLine;
    TShape        *m_SilverLine;

    TImage        *m_NavImg;
    TSpeedButton  *m_sbUp;
    TSpeedButton  *m_sbDown;

    TImage        *m_Image;
    int           m_Left;
    int           m_Height;
    int           m_Width;
    int           m_VStep;
    int           m_Space;

    AnsiString    m_MenuCode;
    AnsiString    m_MenuCaption;
    AnsiString    m_MenuDesc;
    int           m_MenuNo;
    AnsiString    m_MenuPicName;
    AnsiString    m_MenuSelPicName;
    AnsiString    m_MenuMovePic;
    int           m_RightLevel;
    AnsiString    m_MenuHotPic;
    AnsiString    m_MenuMoveUpPic;
    AnsiString    m_MenuMoveDownPic;
    AnsiString    m_MenuNavpic;

    void Assign(TsdMenu * p);
    int __fastcall GetMenuCount();
public:
    TsdMenu(TsdTask *pm,TPanel *pl,TPanel *SubPl,TForm *FNavpic,TImage *FNavImg,Graphics::TBitmap *FBitmap);
    ~TsdMenu();
    TsdSubMenu *SubMenu;
    TsdNavpic *Navpic;
    TsdNavArrow *NavArrow;

    void ShowNextPageMenu();
    void ShowPageMenu();
    void ShowPriorPageMenu();
    bool LocateByIndex(int Index);
    bool LocateByKey(AnsiString Key);
    void AddMenu();
    void ShowForm(AnsiString Key);
    void __fastcall MenuClick(TObject * Sender);
    void __fastcall MenuMoveUpClick(TObject * Sender);
    void __fastcall MenuMoveDownClick(TObject * Sender);

    __property AnsiString MenuCode  = { read = m_MenuCode, write = m_MenuCode };
    __property AnsiString MenuCaption  = { read = m_MenuCaption, write = m_MenuCaption };
    __property AnsiString MenuDesc  = { read = m_MenuDesc, write = m_MenuDesc };
    __property int MenuNo  = { read = m_MenuNo, write = m_MenuNo };
    __property int RightLevel  = { read = m_RightLevel, write = m_RightLevel };
    __property int Selected  = { read = m_Selected, write = m_Selected };
    __property int ParentVisualNum  = { read = m_pVisNum, write = m_pVisNum };
    __property int ChildVisualNum  = { read = m_cVisNum, write = m_cVisNum };
    __property AnsiString MenuPicName  = { read = m_MenuPicName, write = m_MenuPicName };
    __property AnsiString MenuSelPicName  = { read = m_MenuSelPicName, write = m_MenuSelPicName };
    __property AnsiString MenuMovePic  = { read = m_MenuMovePic, write = m_MenuMovePic };
    __property AnsiString MenuNavpic={read=m_MenuNavpic,write=m_MenuNavpic};
    __property int Left  = { read = m_Left, write = m_Left };
    __property int Height  = { read = m_Height, write = m_Height };
    __property int Width  = { read = m_Width, write = m_Width };
    __property int VStep  = { read = m_VStep, write = m_VStep };
    __property AnsiString  MenuHotPic ={ read=m_MenuHotPic, write = m_MenuHotPic };
    __property AnsiString  MenuMoveUpPic= {read=m_MenuMoveUpPic, write=m_MenuMoveUpPic};
    __property AnsiString  MenuMoveDownPic={read=m_MenuMoveDownPic,write=m_MenuMoveDownPic};
    __property int MenuCount  = { read = GetMenuCount };

};


#endif
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -