📄 template.h
字号:
#ifndef __TEMPLATE__H__
#define __TEMPLATE__H__
//template.h
#include"..\ucos-ii\includes.h" /* uC/OS interface */
#include "..\ucos-ii\add\osaddition.h"
#include"..\inc\osfile.h"
#include"..\inc\drv\rtc.h"
#include "..\inc\drv.h"
#include <string.h>
#include "..\ucos-ii\add\list.h"
#include "..\inc\drv\figure.h"
#include "..\inc\drv\display.h"
#include "..\inc\maro.h"
#include "..\template.h"
//数据结构
typedef struct{
U32 CtrlType; //控件的类型
U32 CtrlID;
structRECT ListCtrlRect; //列表框的位置和大小
structRECT ClientRect; //列表框列表区域
U32 FontSize;
U32 style; //列表框的风格
U8 bVisible; //是否可见
PWnd parentWnd; //控件的父窗口指针
U8 (*CtrlMsgCallBk)(void*);
U16 **pListText; //列表框所容纳的文本指针
int ListMaxNum; //列表框所容纳的最大文本的行数
int ListNum; //列表框所容纳的文本的行数
int ListShowNum; //列表框所能显示的文本行数
int CurrentHead; //列表的表头号
int CurrentSel; //当前选中的列表项号
structRECT ListCtrlRollRect; //列表框滚动条方框
structRECT RollBlockRect; //列表框滚动条滑块方框
int Max_Word_Num; // 单条列表所包含的最多字数
u8 IsDraw3DRect; // 是否画三维边框的矩形
}ListCtrl2, *PListCtrl2;
// 模板预定义常量定义
#define CTRLTYPE_MENU 5 //水平列表框
#define MENU_SHOW_NUM 2 //水平菜单显示条目
#define MENU_NAME_NUM 2 //菜单名称所占字数
#define CLEARANCEmenu 8
#define CLEARANCEy (OSFontSize[FONTSIZE_SMALL]/2)
//变量外部声明
extern List OSCtrl; //系统控件的链表,表头保留
extern OS_MEM *pCtrlMem;
extern int OSFontSize[];
extern OS_EVENT *Rtc_Rw_Sem; //Rtc读写控制权旗语
//消息定义
#define OSM_GAME_START 999 //游戏开始
#define OSM_GAME_OK 998 //落棋点确定
// 模板预定义常量定义
#define LINE_WIDTH_DEFAULT 6 //默认行宽度
#define MENU_SHOW_NUM 2 //水平菜单显示条目
//////////////////////////////////////////////////////////////////////////////////////
///////////////////////////// 基本API函数 //////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
PDC GetCtrlParentDC(POS_Ctrl pCtrl);
void ReleaseCtrlParentDC(POS_Ctrl pCtrl);
void strChar2U8(U8 ch2[], const char ch1[]);
void U82strChar(char ch2[], const U8 ch1[] );
void Int2strChar(char ch[], const int number);
int strChar2Int(char ch[]);
void Unicode2strChar(char ch2[], const u16 ch1[]);
int CntUstrNum(u16 *ustr) ; // 计算Unicode 串的字数
//////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////// 简单图形API函数 (new) /////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
void HorizonLine(PDC pdc,int Point1x, int Point1y ,int Point2x, int Point2y);
void VerticalLine(PDC pdc, int Point1x, int Point1y, int Point2x, int Point2y);
void UniformLine(PDC pdc, int Point1x, int Point1y, int Point2x, int Point2y, int PenWidth);
void Draw3DDownRect(PDC pdc, int Textx,int Texty,int TextNum, u8 fnt); //画3D 凹矩形,用于模拟量数字的显示
void Draw3DDownRect2(PDC pdc, structRECT * prect); ////画3D 凸矩形,用于开关量显示
void Draw3DUpRect(PDC pdc, int Textx,int Texty,int TextNum, u8 fnt); //画3D 凹矩形,用于模拟量数字的显示
void Draw3DUpRect2(PDC pdc, structRECT * prect) ;//画3D 凹矩形,用于模拟量数字的显示
//////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////// 状态量显示函数:模拟量+开关量 //////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////// 控件函数 //////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
PListCtrl CreateMenu(U32 CtrlID, structRECT* prect, int MaxNum, U32 FontSize, U32 style, PWnd parentWnd);
void MenuDrawClient(PListCtrl pListCtrl, PDC pdc);
void DrawMenu(PListCtrl pListCtrl);
void MenuSelMove(PListCtrl pListCtrl, int moveNum, U8 Redraw); //列表框高亮度条移,正数下移,负数上移
void ListCtrl2SelMove(PListCtrl2 pListCtrl, int moveNum, U8 Redraw);//列表框高亮度条移,正数下移,负数上移
void DrawListCtrl2(PListCtrl2 pListCtrl);
void CreateListCtrl2Patch(PListCtrl2 pListCtrl, int Max_Word_Num, u8 IsDraw3DRect);
void TextOutRect2(PDC pdc, structRECT * prect, U16 * ch, U8 bunicode, U8 fnt);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -