想用Enter + Ctrl发送信息, 求助,希望大虾们能帮到我!!!

caivirus 2004-03-26 02:24:02
void __fastcall TForm1::edtMsgKeyPress(TObject *Sender, char &Key)
{
//如果按了Enter键并且有信息待发送
if(Key=='\r' && edtMsg->Text!="")
{
AnsiString Msg=edtNickname->Text+": "+edtMsg->Text;
Talk->Lines->Add(Msg);
//清空edtMsg的信息,用户可以继续输入并按Enter键
edtMsg->Clear();
if(rbServer->Checked)

这是我的聊天室的部分程序,它发送信息的时候,只需要按Enter键就可以发送的。但现在我想设置成按Enter + Ctrl 才可以发送信息,请问哪程序如何编写呢?请大虾们帮到我~~,THANKS!

...全文
65 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hy1080 2004-04-11
  • 打赏
  • 举报
回复
楼主是写客户端吧,偶用注册热键的办法来办.
GaoLun 2004-04-11
  • 打赏
  • 举报
回复
楼上的 强!!~~
ecobin 2004-04-10
  • 打赏
  • 举报
回复
<script language=javascript>
ie = (document.all)? true:false
if (ie){
function ctlent(eventobject){if(event.ctrlKey && window.event.keyCode==13){this.document.NewRemark.submit();}}
}
</script>

然后对showlog.asp中的<textarea>内部填加 onkeydown=ctlent()
形成 <textarea onkeydown=ctlent()>即可
lovebcb 2004-04-10
  • 打赏
  • 举报
回复
void __fastcall TForm1::Edit1KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Shift.Contains(ssShift)) // 按下SHift键
{
if(Key==13) // 回车键
{
ShowMessage("qwert");
}
}
}
Friecin 2004-04-10
  • 打赏
  • 举报
回复
if(Key == VK_RETURN && Shift.Contains(ssCtrl))
{
AnsiString Msg=edtNickname->Text+": "+edtMsg->Text;
Talk->Lines->Add(Msg);
//清空edtMsg的信息,用户可以继续输入并按Enter键
edtMsg->Clear();
if(rbServer->Checked)
}
空中猎手 2004-04-10
  • 打赏
  • 举报
回复
换个事件,用KeyDown事件
if(Key == VK_RETURN && Shift.Contains(ssCtrl))
{
//do something
}
13571863167 2004-04-10
  • 打赏
  • 举报
回复
up

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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