| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1309 人关注过本帖
标题:请高人指点文件数据删除的方法
只看楼主 加入收藏
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
还要聊吗??

上次不是和hellovfp 写打字软件。

我主要是放在菜单设计上了。
想写一个控制台多级菜单下拉菜单的接口。。
写了一半了 主要是完成数据结构设计。但由于代码量还要比较大。
打算不写了,想多画点时间学习新的东西。。。。
程序代码:
#include <WINDOWS.H>
#define MENUTYPE 0
#define OPTIONTYPE 1

typedef struct tagOption
{
    //UINT ID;  除掉不要用户来处理
    char Name[256]; //Option 的名字
    UINT vLen; //框的长度
    UINT hLen; //框的高度
    UINT color; //框的颜色
    //选项所在的坐标
    UINT x;
    UINT y;

    void (*ConsleProc)(void *Lparam); //次菜单的指向的处理函数指针


}Option,*pOption;

typedef struct tagProcFun
{
    void (*ConsleProc)(void *Lparam); //次菜单的指向的处理函数指针
    void (*UpProc)(void); //处理自己上的消息处理
    void (*DownProc)(void); //处理自己下的消息处理
    void (*LeftProc)(void); //处理自己左的消息处理
    void (*RighProc)(void); //处理自己右的消息处理
}ProcFun,*pProcFun;

typedef struct tagMenu
{
    Option _option;//单个选项结构

    int ID;   //菜单的ID
    int Type; //菜单类型 用于扩展

    ProcFun fun;//保存处理函数指针的结构
    struct tagMenu *pre; //指向前一个菜单
    struct tagMenu *Next; //指向下一个菜单
    struct tagMenu *chlid; //指向子菜单

    int ParentID; //指向父菜单
    char ParentName[256];
}Menu,*pMenu;

typedef struct tagMenuInfo
{
    pMenu head;
    pMenu tail;
    UINT Number;
}MenuInfo,*pMenuInfo;

typedef struct tagListMenu
{
     struct tagListMenu *pre;
     struct tagListMenu *Next;
    //struct tagListMenu *tail;
    pMenu child; //指向子菜单
   
    int ID;
    //MenuInfo info;
    Option pOp;

    ProcFun Fun;
}ListMenu,*pListMenu;

typedef struct tagListMenuInfo
{
    int startX; //下拉的菜单的开始的菜单的起始位置
    int startY;
    pListMenu pMenuHead; //指向开始菜单的开始
    pListMenu pTail; //指向开始菜单的结尾
    char ListMenuName[1024]; //放开始菜单的名字
    int Num; // ListMenu 的个数
}ListMenuInfo,*pListMenuInfo;

//全局变量
extern UINT gID; //保存当前要处理的菜单ID
extern int flag; //一个小小的标识
extern Menu myMenuHead;//菜单
extern pListMenu myListHead;

void InitBoundary();
void assitListMenu(int startX,int startY,char *ListMenuName);
void AddChildMenu(char *ParentName,char *MenuName,void (*ConsleProc)(void *Lparam));

/////////事件处理//////

void List_Up();
void List_Down();
void List_Left();
void List_Right();

void Menu_Up();
void Menu_Down();
void List_Left();
void List_right();

我是上面那样设计结构。

不知道你要怎么设计呢??



用心做一件事情就这么简单
2012-02-18 02:02
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
回复 20楼 TonyDeng
这个可能是我不明白大量数据具体指什么吧!!!
呵呵

[ 本帖最后由 小鱼儿c 于 2012-2-18 02:05 编辑 ]

用心做一件事情就这么简单
2012-02-18 02:03
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
上面的
文件 编辑 帮助

这样的东西 我定义为了ListMenu; 结构。
然后下面单个的我也把他们叫成菜单。
是因为不知道具体要叫什么

用心做一件事情就这么简单
2012-02-18 02:07
C_printf
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:102
专家分:122
注 册:2010-1-26
收藏
得分:0 
菜单项,子菜单。。。。
2012-02-18 02:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
不聊了,吃夜宵去。

寫多級菜單,關鍵是做出一個彈出式菜單的類(用C也可以,用C++也可以,只要有那個思路,出來的效果是一樣的),然後作為模塊調用就可以了。其實你應該從現在開始積累一批自己專用的工具函數和類庫,將來馬上能用,也就是做基礎構件。不必急著做項目,零件和工具不趁手,做出來的也不成樣子。先考慮一批現實和未來可能要用到的東西,把那些吃下來,逐個攻破,以後組裝就方便了。工具做出來是永久性的,就抱著一勞永逸的態度去弄它,徹底弄好,這個過程完成了,做項目的基礎也就打好了。你先試試吧,不然回頭問你師傅,看我說的如何。

授人以渔,不授人以鱼。
2012-02-18 02:11
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
以下是引用C_printf在2012-2-18 02:10:14的发言:

菜单项,子菜单。。。。
但比喻
       |菜单3|   
菜单项1|菜单4|
       |菜单5|
上面的菜单3 4 5 也可以叫是菜单项1的子菜单啊。

用心做一件事情就这么简单
2012-02-18 02:13
C_printf
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:102
专家分:122
注 册:2010-1-26
收藏
得分:0 
我来调用一个看看  ProcFun.UpProc();
。。。 这是c++还是java啊。。。
2012-02-18 02:19
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
用樹結構實現,不用管多少級,除了根上的點,下面全是一個一個SubMenu的PopUp模型。

授人以渔,不授人以鱼。
2012-02-18 02:21
C_printf
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:102
专家分:122
注 册:2010-1-26
收藏
得分:0 
回复 26楼 小鱼儿c
呵呵,随便怎么叫啊,你明白就行....
2012-02-18 02:21
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
回复 29楼 C_printf
呵呵,也是。
我只给头文件。
而且只是写数据结构 。
呵呵。。
还只是一个框架而已。。。

c语言啊。。

我那种写法格式 貌似叫骆驼法。
呵呵

用心做一件事情就这么简单
2012-02-18 02:27
快速回复:请高人指点文件数据删除的方法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019944 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved