📄 sdmenu.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 + -