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

📄 mywindow.h

📁 linux环境下结合ncurse库
💻 H
字号:
/*
	自定义窗口 -  定义
*/
#ifndef MYWINDOWS_H_
#define MTWINODWS_H_

#define ISTEXT 0   // isText对象
#define ISBUTTON 1 // isButton对象
#include <ncurses.h>
#include "LinkStruct.h"
typedef struct  _mywindow
{
	Link m_link; // 主窗口用有的 "对象",用链表进行管理
	WINDOW * m_window; // 主窗口指针
	short m_color; // 主窗口背景颜色
	bool m_isborder; // 主窗口是否需要边框
	short m_py;
	short m_px;
	short m_sizey;
	short m_sizex;

	// 函数指针
	void ( * AddActiveElement )(struct _mywindow * pMywindow,void * pdata ,int objecttype,int y,int x); // 加活动元素 按钮,文本等
	void ( * DrawHline )(struct _mywindow * pMywindow,int y,int x); // 在主窗口画水平线
	void ( * DrawWords )(struct _mywindow * pMywindow,int y,int x,char * str); // 在主窗口上写静态字
	void ( * ShowMyWindow )(struct _mywindow * pMywindow); // 显示mywindow 主窗口
	void ( * HideMyWindow )(struct _mywindow * pMywindow); // 隐藏主窗口
	void ( * DelMyWindow )(struct _mywindow * pMywindow); // 释放mywindow资源
	void ( * ChangeMyWindow )(struct _mywindow  ** ppmywindow );  // 根据ppmywindow来改变window属性
	int ( * RunMyWindow)(struct _mywindow * pMywindow); // 动态运行这个窗口
}MyWindow;

MyWindow * MakeMyWindow(MyWindow *pMywindow); // 创建Mywindow对象
void ChangeMyWindow(MyWindow **ppmywindow);
void AddActiveElement(MyWindow *pMywindow,void * pdata, int objecttype,int y,int x);
void DrawHline(MyWindow *pMywindow,int y,int x);
void DrawWords(MyWindow *pMywindow,int y,int x,char * str);
void ShowMyWindow(MyWindow *pMywindow);
void HideMyWindow(MyWindow *pMywindow);
void DelMyWindow(MyWindow *pMywindow);
int RunMyWindow(MyWindow * pMywindow);

#endif

⌨️ 快捷键说明

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