LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2026|回复: 25

求教

[复制链接]
发表于 2006-2-10 15:02:09 | 显示全部楼层 |阅读模式
我对LUMAQQ的界面很喜欢,也想学习画一个,我下了原代码在研究,可是类包太多了,而且原代码指南似乎不怎么详细呀,能否请知道的兄弟们做个详细点的说明呢?比如说那个包里画了登陆界面?那个包里画了什么什么的,请指点指点。
发表于 2006-2-10 17:28:20 | 显示全部楼层
源代码指南是给一定基础的人看的,只是概述性的文档。你如果有一定水平,类多了应该难不倒你,如果你刚起步,就别干这个事了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-10 19:54:00 | 显示全部楼层
我的技术水平的确不高,不过我还是想研究看,我知道你很忙,不方便指点就算了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-11 11:05:54 | 显示全部楼层
我想在QQ上多加一个栏目条,和“我的好友”,“群/校友录”,“最近联系人”同级,应该怎么做呢?还有登陆截面的框架是在那里画的呢?我还就是找不到呀,郁闷
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-15 09:58:23 | 显示全部楼层
我想在已有的BLIND上多加一个SLAT功能条,可是新添加的SLAT上的文字应该怎么写呢?最开始的组资源文件在那里读取?另我新加的功能建立个新组来管理,应该怎么添加进已有的组呢?

ps:好象没啥人研究这个啊?都是关心有什么新功能可以使用,没人爱研究怎么做的。。。:(
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-15 12:05:46 | 显示全部楼层
LumaQQ_en.properties     group_default_mission = Mission
LumaQQ_zh.original.properties     group_default_mission = 我的任务
LumaQQ_zh.properties     group_default_mission = \u6211\u7684\u4efb\u52a1

ModelUtils.java
public static void createDefaultGroupXmlFile(File file) throws IOException {
// 我的任务
        group = GroupFactory.eINSTANCE.createXGroup();
        group.setName(group_default_mission);
        group.setType(GroupType.MISSION_GROUP.toString());
        groups.getGroup().add(group);
}

Messages.java
// 缺省组的名字
public static String group_default_mission;

以上是我添加的基础信息,还有什么地方没有添加吗?

下面是我想要加个SLAT,给SLAT上添加文字(我的任务)

private String getGroupText(Group g) {
    switch(){...
            case MISSION_GROUP:
        return g.name;
....
}

private void initTreeMode() {

viewer = new QTreeViewer<Model>(blind);
QTree tree = viewer.getQTree();
viewer.setLabelProvider(ModelLabelProvider.INSTANCE);
viewer.setInput(this);
viewers.put(missionGroup, viewer);
blind.addSlat(tree);
}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-15 12:11:20 | 显示全部楼层
报错页面

Exception in thread "main" java.lang.NullPointerException
        at edu.tsinghua.lumaqq.widgets.qstyle.QTreeViewer.refresh(QTreeViewer.java:227)
        at edu.tsinghua.lumaqq.widgets.qstyle.QTreeViewer.setInput(QTreeViewer.java:500)
        at edu.tsinghua.lumaqq.ui.helper.BlindHelper.initTreeMode(BlindHelper.java:616)
        at edu.tsinghua.lumaqq.ui.helper.BlindHelper.resetMode(BlindHelper.java:817)
        at edu.tsinghua.lumaqq.ui.helper.BlindHelper.setTreeMode(BlindHelper.java:915)
        at edu.tsinghua.lumaqq.ui.MainShell.setClient(MainShell.java:321)
        at edu.tsinghua.lumaqq.LumaQQ.main(LumaQQ.java:150)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-15 16:27:31 | 显示全部楼层
// 初始化用户文件路径
initUserFilePath(me);
...
public static void initUserFilePath(QQUser me) {
GROUPS = INSTALL_DIR + "/" + me.getQQ() + "/groups.xml";
...}
blindHelper.initModels();
/**
* 初始化model
*/
public void initModels() {
...
// 初始化,载入分组文件
ConfigHelper configHelper = main.getConfigHelper();
File groupFile = new File(LumaQQ.GROUPS);
if(!configHelper.checkGroupFile(groupFile))
   return;
XGroups groups = GroupUtil.load(groupFile);
....
}
groups.xml是从TX上读取下来的啊?那么这里读取这个文件来获得blind上的slat的文本名字,
那么我新加入一个slat,名字要怎么办呢?

final Slat slat1 = new Slat(blind, SWT.FLAT | SWT.CENTER, "我的任务");
slat1.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
我这么写的话,又没有把slat1加到blind后面,是因为
children.add(index, slat);的关系吗?
那么如何获得这个index呢?blind.getSlatCount();可以?
那么在BlindHelper.java中如何引用children.add(index, slat);?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-16 14:53:43 | 显示全部楼层
没人可以指点一下吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-20 19:35:45 | 显示全部楼层

请教

这个是我加的一个工具条,内容是从本地数据库读取的,但是我还是没搞定怎么给板条加文字,我在基础的资源文件里都添加了,可是还是没读出来,有点晕,高人们指点下哈。

研究了LUMAQQ后觉得特有意思,也想自己尝试写个类似的,当然功能要简单得多了,能支持内网聊天就好了,有兴趣的朋友可以一起研究啊。。。另外还请高人们多多指点

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表