QQ聊天工具开发碰到的几个难题。。。

laj0600310219 2010-11-08 05:30:52
1、在richtextbox中,对方发过来的图片,如何实现右键保存到本地的功

能?如何取得选中的图片?

2、对方发信息过来的时候,一般都会有头像跳动提示。当点击跳动的头像的

时候,就弹出聊天窗口,但是如果不点击头像的时候,对方发送过来的信息,

该怎么处理?是保存在本地,点击窗口的时候,再读取到窗口中,还是怎么处

理?但是如果有多个头像在跳动的时又该怎么处理?

3、系统托盘的弹窗是怎么实现的?

4、有一父窗体A,在A中new了一个子窗口B。怎么实现在关闭A的同时,B也一起关闭?

望高手指点迷津。。。谢过。。。
...全文
556 37 打赏 收藏 转发到动态 举报
写回复
用AI写文章
37 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxp791820798 2011-08-26
  • 打赏
  • 举报
回复
怎样实现聊天的功能???
聊天图片怎么保存啊 ??


急用谁帮帮?
chen870201 2010-11-09
  • 打赏
  • 举报
回复
窗口判断还是好实现
hanjinkai 2010-11-09
  • 打赏
  • 举报
回复
消息 应该存储在服务器端;图片跳动显示只是提示有信息,当点击图片读取 信息;
肯定窗口 有状态
lzfstruggle 2010-11-09
  • 打赏
  • 举报
回复
xiaomengcool123 2010-11-09
  • 打赏
  • 举报
回复
腾讯太黑了
TaoFor 2010-11-09
  • 打赏
  • 举报
回复
5楼 太给力了
laj0600310219 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 bourbon1795 的回复:]
引用 27 楼 bourbon1795 的回复:

引用 15 楼 sp1234 的回复:

实际上类似于这个问题一样重要的问题:一个人的某个状态修改时如何让所有好友都及时看到?

你这是在描述,观察者模式。

一个客户端在更改的时候只用去通知服务器,再由服务器通知每个客户端。
[/Quote]
LZ正解。。。
bourbon1795 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 27 楼 bourbon1795 的回复:]

引用 15 楼 sp1234 的回复:

实际上类似于这个问题一样重要的问题:一个人的某个状态修改时如何让所有好友都及时看到?

你这是在描述,观察者模式。
[/Quote]
一个客户端在更改的时候只用去通知服务器,再由服务器通知每个客户端。
bourbon1795 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 sp1234 的回复:]

实际上类似于这个问题一样重要的问题:一个人的某个状态修改时如何让所有好友都及时看到?
[/Quote]
你这是在描述,观察者模式。
laj0600310219 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 hyblusea 的回复:]
引用 23 楼 laj0600310219 的回复:

引用 22 楼 samuelfisher 的回复:
回答能回答的:

建议不要传Rtf, 体积太大,不适合在网络上传输, 传输表情,可以仅传输表情相对应的表情符号.
[/Quote]
表情就是传输对应的符号。。。图片也考虑过以文件的形式传输,传输到对方之后,保存到本地,再从本地读取显示到richtextbox中。。。这样效率是要比rtf快许多。。。
hyblusea 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 laj0600310219 的回复:]

引用 22 楼 samuelfisher 的回复:
回答能回答的:

1.的话可能会难点,考虑到对图像流的操作,GOOGLE一下吧。呵。

1、我采用的是将图片也以rtf的格式与文本信息一起发送的,发送到对方之后,也是直接读取rtf格式在richtextbox中显示出来,所以,要实现右键保存图片就不知道该怎么获取到图片的对象。。。
[/Quote]

建议不要传Rtf, 体积太大,不适合在网络上传输, 传输表情,可以仅传输表情相对应的表情符号.
hyblusea 2010-11-08
  • 打赏
  • 举报
回复
1.RichTextBox嵌入图片,实际上是嵌入的一个Ole对象, 创建Ole对象时, 订约相应事件
2.有消息时,托盘处图标闪动,实际上是多个图标, 循环显示而已,
剩下的问题都很简单吧, 对于一个聊天系统而言,这些都是一些细节问题
问题4更不是问题, 父窗口关闭时, 子窗口会自动关闭的.
laj0600310219 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 samuelfisher 的回复:]
回答能回答的:

1.的话可能会难点,考虑到对图像流的操作,GOOGLE一下吧。呵。
[/Quote]
1、我采用的是将图片也以rtf的格式与文本信息一起发送的,发送到对方之后,也是直接读取rtf格式在richtextbox中显示出来,所以,要实现右键保存图片就不知道该怎么获取到图片的对象。。。
余胜国 2010-11-08
  • 打赏
  • 举报
回复
回答能回答的:
2.没读的信息在数据库有个状态,只有当双击时那个状态才会改,否则你现在登录看到是未读状态时,图像还得闪,当然这状态是保存在服务器的,如果有多个也只不过是对应多条记录对应多个用户ID 只是状态是未读的,都闪。

4.这也不难,因为他们都处于同一父窗体中,所以你很容易拿到父窗体,然后用父窗体对像.Controls 这样可以拿出父窗体下的所有控件,用FOREACH 用每个对象.Name 如果 NAME等于A and .getType()=="Form" 的话,就将对象obj as Form 然后obj.close();就行了。
3.应该也不难,在网上找下资料就能找到。
1.的话可能会难点,考虑到对图像流的操作,GOOGLE一下吧。呵。
个人感觉,希望对你有帮助。
laj0600310219 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 dengkeyu 的回复:]
楼主在开发QQ类聊天软件?
[/Quote]
学习一下。。。
mrchocole 2010-11-08
  • 打赏
  • 举报
回复
呵呵,大家说的都不错
laj0600310219 2010-11-08
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 sp1234 的回复:]
“对方发信息过来的时候”我感兴趣你如何设计实现这个?这个需要写一份简单(非正式但是肯定作为任务规划基础)的文档,这正是只有设计师才能干的活。
[/Quote]
我目前实现是这样的,对方发过来的信息,是直接就弹窗出来显示。但是,现在我想实现类似于QQ的那种跳动头像的效果,点击头像后,再弹窗。。。所以,目前我就是卡在了你所感兴趣的问题上。。。
  • 打赏
  • 举报
回复
实际上类似于这个问题一样重要的问题:一个人的某个状态修改时如何让所有好友都及时看到?
  • 打赏
  • 举报
回复
“对方发信息过来的时候”我感兴趣你如何设计实现这个?这个需要写一份简单(非正式但是肯定作为任务规划基础)的文档,这正是只有设计师才能干的活。
dengkeyu 2010-11-08
  • 打赏
  • 举报
回复
楼主在开发QQ类聊天软件?
加载更多回复(10)

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧