HZYZ源码分析笔记
来源:互联网 发布:mac只能到10.9.5 编辑:程序博客网 时间:2024/06/10 11:49
流程
1、写好的c/c++代码。
2、将写好的c/c++代码整个共享入LINUX系统下。
(Oracle VM VirtualBox共享固定目录。
mount(挂载命令)
mount -t vboxsf share(挂载文件夹) /mnt/share/
)
3、在LINUX系统下通过gcc编译为arm的运行包。
(进入makefile文件目录。
make clean(清除编译文件)
make Makefile(编译)
)
4、将运行包烧录入EPOS机中运行。
MAIN函数
Main(){ void ExtractDir(char *p_caFilePath //文件路径 ,char *p_caDir //取得的目录 ) //取得运行目录,不包括最后一个"/"void *memset(void *s, int ch, size_t n);函数解释:将s中前n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法[1] 。在main函数中设置路径及QT字体以后QWSServer::setCursorVisible(false); //让EditText不出现光标使用MainWnd mainwnd;调用MainWnd的构造函数。class MainWnd : public QWidget{ Q_OBJECTpublic: MainWnd(QWidget *parent = 0); ~MainWnd(); void createTextWnd(); //创建文本窗口 void createMenuWnd(); //创建菜单窗口 void showWnd(); void addMenuItem(const char *p_caTitle, int p_iWidth=-1, int p_iHeight=-1); //创建菜单 void addText(int p_iUseRows, Qt::Alignment alignment, const char *p_caFormat, ...); void setTitle(const char *p_caTitle); void setText(int p_iTextIdx, const char *p_caFormat, ...); void setHelp(const char *p_caFormat, ...); void setT9Help(const char *p_caBuffer); void clearWnd(int p_iFlag); // int getPages(); int getCurPageIdx(); void ctrlWndTimeout(int p_iSecond); void PageUp(); void PageDown(); void Display(); void HideLabel(); int PrepareText(const char *pcaStr,int ibeginRow=0,int ibeginCol=0); void setProgress(int p_iProgress); int getProgress(); CmdBase* getBase(); TWNDTYPE getWndType(); void setemit(); char caBuff[32]; QList<CmdBase *>c_lstDynMenu; //动态交易菜单列表 QProgressBar *c_pProgressBar; //进度条处理 QQueue<QString> c_qusMessage;public slots: void onMenuClick(int p_iIdx); void onNewCmd(CmdBase *p_obj); void startApp(); void OnShowWndTime(int p_iSecond); void OnHideWndTime(int p_iSecond); void onClickReturn(); void onShowSn(); void onUpdateMenu(); void onTradeTest();//联机交易自检 void onFactorReset();//恢复出厂设置 void onClearMenu();//清除菜单 void onUpdateKey();//跟新密钥 void onTestNet();//网络检测 void onDeviceManage();//终端管理 void onShowKey(char cKey);//显示快捷操作时的键值private: TWNDTYPE c_stWnd; //当前窗口模式, 1:普通文本模式, 2:菜单模式 int c_iPages; //总的页数 int c_iCurPageIdx; //当前页号 bool c_blLines; //是否生成了当前界面的文本行对象 QLabel *c_labBG; //背景 QLabel *c_labTitle; //标题栏 QLabel *c_labHelp; //帮助提示文本 QLabel *c_labWndTimeout; //界面超时 QLabel *c_labLines[TEXT_LINES]; //文本行显示对象 CmdBase *c_cmdBase; //操作码指令处理类指针 WndTimeout *c_WndTimeout; //界面超时线程 QList<TText *>c_lstText; //文本对象,存放具体的文本 QList<char *>c_lstLines; //文本行对象 QList<Qt::Alignment>c_lstAlignment; //文本行对齐方式 QList<QCustButton *>c_lstMenuItems; //菜单窗口的按钮控件集 QSignalMapper *c_menuMapper; //菜单事件Mapper char c_caTradeCode[10]; int c_pciSize[4]; int c_iPage; int c_iCurPage; int c_iTotal; bool c_bFirst; int c_mouseX; int c_idot; int c_iLeftBorder; int c_iColWidth; int c_iTopBorder; int c_iRowWidth; bool eventFilter(QObject *obj, QEvent *event); //事件过滤器 void getLines(); //生成文本行对象 /* char c_pcaSrc_app_name[100]; char c_pcaDst_app_name[100]; char c_pcaTradeCode[10]; char c_pcaTradeCash[20]; char c_pcaTrade[10]; char c_caCmd[128]; char c_chValue; */signals: void menuSelect(int p_iIdx); //菜单选择信号 void newCmd(CmdBase *p_obj); //新操作码命令信号 void KeyPress(int p_iKey); //按键事件 //void slotKey(int num); //数字按键事件 void typesingle();};#endif //__MAINWND_H__
}
“`
0 0
- HZYZ源码分析笔记
- JForum源码分析笔记
- uboot源码分析笔记
- struts2源码分析笔记
- BeanFactory源码分析笔记
- MINA 源码分析笔记
- HashMap源码分析笔记
- Serializable源码分析笔记
- jquery源码分析笔记
- CFRunLoop源码分析笔记
- A2Billing源码分析笔记(一)
- SharpDevelop源码分析笔记(一)
- DOOM3 源码分析笔记(1)
- mfs源码分析,学习笔记
- jQuery源码分析笔记--1
- nginx源码分析笔记1
- leveldb源码阅读分析笔记
- Webbench 源码分析 阅读笔记
- 链接
- PHP与android时间戳的转换问题
- QML Flipable、Flickable和状态与动画
- You are using a non-Cygwin compatible Make program错误
- C++获取文件夹下的所有文件的名字
- HZYZ源码分析笔记
- C语言实现带头结点的链表的创建、查找、插入、删除操作
- 在Linux下用LVS和Ipvsadm做Web负载均衡(推荐)
- 使用jQuery解析JSON数据
- SQL语句执行顺序综述
- java 使用new新建一个对象时的操作过程
- ubuntu kylin 14.04启用root账户登录
- 矩阵蛇形填充
- What is Complex Event Processing? (Part 3)