Foxtable(狐表)用户栏目专家坐堂 → OpenQQ能否按回车发送弹窗消息


  共有2244人关注过本帖树形打印复制链接

主题:OpenQQ能否按回车发送弹窗消息

帅哥哟,离线,有人找我吗?
zoudezhao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3729 威望:0 精华:0 注册:2017/6/9 18:02:00
OpenQQ能否按回车发送弹窗消息  发帖心情 Post By:2018/2/27 17:28:00 [只看该作者]

如题,因为只有Send 才能激活事件 如果想默认弹窗不知道该怎么做,总是自己加{!} 或者点弹窗发送相对于来说有些麻烦   能否默认发送弹窗信息。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/27 17:56:00 [只看该作者]

思路1:输入信息的时候,给信息加入{!}的字符

 

全局代码

 

Public Sub textbox_TextChanged(sender As object, e As EventArgs)
If sender.text.startswith("{!}") = False Then
    sender.text = "{!}" & sender.text
    sender.SelectionStart = sender.text.length
    sender.SelectionLength = 1
End If
End Sub

 

打开聊天窗口代码

 

QQClient.OpenChatWindow()
Dim frm As windows.forms.form = Application.OpenForms("frmTalker")
If frm IsNot Nothing Then
    Dim obj = frm.controls("SplitContainer1")
    Dim edit As windows.forms.textbox = obj.panel2.controls("C1DockingTab2").controls("C1DockingTabPage3").controls("SplitContainer2").panel2.controls("txtSender")
    Addhandler edit.textchanged, addressof textbox_textchanged
End If


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/27 18:05:00 [只看该作者]

思路2:类似思路1,在聊天窗口加入一个按钮【弹出发送】,然后绑定click事件,当点击按钮的时候,给文本框加上{!}的字符,然后触发发送按钮。

 

思路3:类似思路1,给文本框绑定keydown事件,如果触发 alt+enter,就弹出发送。

 

全局代码

 

Public Sub textBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs)
If e.alt AndAlso e.KeyCode = Keys.Enter Then
    If sender.text.startswith("{!}") = False Then
        sender.text = "{!}" & sender.text
        sender.parent.Controls("btnSend").PerformClick
    End If
End If
End Sub

 

打开聊天窗口

 

QQClient.OpenChatWindow()
Dim frm As windows.forms.form = Application.OpenForms("frmTalker")
If frm IsNot Nothing Then
    Dim obj = frm.controls("SplitContainer1")
    Dim edit As windows.forms.textbox = obj.panel2.controls("C1DockingTab2").controls("C1DockingTabPage3").controls("SplitContainer2").panel2.controls("txtSender")
    Addhandler edit.keydown, addressof textBox1_KeyDown
End If


 回到顶部
帅哥哟,离线,有人找我吗?
zoudezhao
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:409 积分:3729 威望:0 精华:0 注册:2017/6/9 18:02:00
  发帖心情 Post By:2018/2/28 8:52:00 [只看该作者]

好的感谢甜老师


 回到顶部