⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chatroom.aspx

📁 这是asp.net^和Visual C++Sharp编写的串并口通讯的书籍 源代码
💻 ASPX
字号:
<%@ Page language="c#" Inherits="book09.ChatRoom" codePage="936" CodeFile="ChatRoom.aspx.cs" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
 <HEAD>
  <title>聊天室</title>
  <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
  <meta content="C#" name="CODE_LANGUAGE">
  <meta content="JavaScript" name="vs_defaultClientScript">
  <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
  <LINK href="global.css" type="text/css" rel="stylesheet">
  <script language="javascript">
  //发送消息
  function send()
  {
   var txtContent = document.all("content").value; //文本框输入内容
   if (txtContent == "") return;
   
   var user_to = document.all("userlist").value;  //聊天对象
   var textcolor = document.all("textcolor").value;  //颜色
   var expression = document.all("expression").value;  //表情
   var isPublic = !(document.all("isSecret").checked);  //是否密谈    
   
   //调用服务器端方法发送消息
   ChatRoom.SendMsg(txtContent, user_to, textcolor, expression, isPublic);
   
   //更新聊天内容显示
   var div = document.all("chatcontent");
   div.innerHTML = ChatRoom.GetNewMsgString().value + div.innerHTML;
   
   //清空输入框
   document.all("content").value = "";
  }
  
  //定时更新聊天内容
  function refresh_chatcontent()
  {
   //调用服务器方法获取最新消息的HTML字符串
   var div = document.all("chatcontent");
   var strNewMsg = ChatRoom.GetNewMsgString().value;
   
   //判断是否为空,避免不必要的更新
   if (strNewMsg != "")
    div.innerHTML = strNewMsg + div.innerHTML;
    
   //定时更新
   window.setTimeout(refresh_chatcontent, 1000);
  }
  
  //更新用户列表(左侧和下拉列表)
  function refresh_onlineusers()
  {
   //发送对象列表
   var userlist = document.all("userlist");
   
   //调用服务器端方法获取用户列表字符串(用逗号分隔)
   var strUserlist = ChatRoom.GetOnlineUserString().value;
   
   //获取客户端显示的用户列表字符串
   var strUserlistClient = "";
   for (var i = 1;i < userlist.options.length;i++)
   {
    if (i != userlist.options.length - 1)
    {
     strUserlistClient += userlist.options[i].value + ",";
    }
    else
    {
     strUserlistClient += userlist.options[i].value;
    }
   }
   
   if (strUserlistClient != strUserlist)  //在线用户列表发生变化
   {
    var userArr = strUserlist.split(',');
    
    //在线用户数
    var usercount = document.all("usercount");
    usercount.innerHTML = "在线名单:(" + userArr.length + "人)";
    
    //左边用户列表
    var tableHTML = "<table>";
    for (var i = 0;i < userArr.length;i++)
    {
     tableHTML += "<tr><td><label onmouseover=\"this.style.cursor='hand'\" onmouseout=\"this.style.cursor='default'\" onclick=\"setObj('" + userArr[i] + "')\">" + userArr[i] + "</label></td></tr>";
    }
    tableHTML += "</table>";
    var div = document.all("onlineusers");
    div.innerHTML = tableHTML;
    
    
    //初始化
    while (userlist.options.length > 0)
    {
     userlist.removeChild(userlist.options[0]);  //清空所有选项
    }
    
    //增加“所有的人”选项
    var oOption = document.createElement("OPTION");
    oOption.text = "所有的人";
    oOption.value = "大家";
    userlist.add(oOption);
    
    //下拉列表中增加在线用户的选项
    for (var i = 0;i < userArr.length;i++)
    {
     var oOption = document.createElement("OPTION");
     oOption.text = userArr[i];
     oOption.value = userArr[i];
     userlist.add(oOption);
    }     
   }   
   
   //每隔1秒更新
   window.setTimeout(refresh_onlineusers, 1000);
  }
  
  //退出聊天室
  function logout()
  {
   ChatRoom.Logout();
  } 
  
  //设置聊天对象
  function setObj(str)
  {
   var userlist = document.all("userlist");
   for (var i = 0;i < userlist.options.length;i++)
   {
    if (str == userlist.options[i].value)
    {
     userlist.selectedIndex = i;
     break;      
    }
   }
  }
  
  //关闭浏览器窗口
  function Close()
  { 
   var ua = navigator.userAgent;
   var ie = navigator.appName == "Microsoft Internet Explorer" ? true:false;
   if (ie) 
   { 
    var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
    if (IEversion< 5.5) 
    { 
      var str  = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">'; 
      str += '<param name="Command" value="Close"></object>'; 
      document.body.insertAdjacentHTML("beforeEnd", str); 
      document.all.noTipClose.Click();
    } 
    else 
    { 
     window.opener = null; 
     window.close(); 
    }
   } 
   else 
   { 
    window.close();
   } 
  }

  </script>
 </HEAD>
 <body bottomMargin="0" onbeforeunload="logout()" leftMargin="0" topMargin="0" rightMargin="0" style="text-align: center">
  <form id="Form1" method="post" runat="server">
      <br />
      <br />
      <br />
   <TABLE id="Table1" cellSpacing="0" cellPadding="0" border="0" style="border-right: #000000 2px double; border-top: #000000 2px double; border-left: #000000 2px double; width: 74%; border-bottom: #000000 2px double; height: 57%">
    <TR>
     <TD style="FONT-SIZE: 12px" vAlign="top" width="150" background="img/onlinebg.jpg"><br>
      <br>
      <div id="usercount"></div>
      <div id="onlineusers"></div>
     </TD>
     <TD vAlign="top" background="img/bgbrick.gif">
      <table style="width: 99%">
       <tr>
        <td align="center" style="FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #337755; FONT-FAMILY: 宋体, Arial; width: 655px;">
         <br>
            啸天聊天室-欢迎您的光临
         <hr>
        </td>
       </tr>
       <tr>
        <td vAlign="top" style="width: 655px; height: 279px">
         <div id="chatcontent" style="OVERFLOW-Y: scroll;WIDTH: 100%; POSITION: relative; HEIGHT: 100%; left: 0px; top: 0px;"></div>
        </td>
       </tr>
      </table>
     </TD>
    </TR>
    <TR height="65">
     <TD bgColor="#0099cc" align="center" valign="center">
     <label onmouseover="this.style.cursor='hand'" onmouseout="this.style.cursor='default'" onclick="document.all('chatcontent').innerHTML = ''" style="FONT-SIZE:14px;FONT-WEIGHT: bold; COLOR: #ffcc00; TEXT-ALIGN: center">清空屏幕</label>
     <br>
     <label onmouseover="this.style.cursor='hand'" onmouseout="this.style.cursor='default'" onclick="if (confirm('您确定要退出该聊天室吗?')) Close();" style="FONT-SIZE:14px;FONT-WEIGHT: bold; COLOR: #ffcc00; TEXT-ALIGN: center">退出聊天</label>
     </TD>
     <TD style="FONT-SIZE: 13px; width: 820px;" align="center" background="img/chatformbg.jpg">颜色:
      <select style="FONT-SIZE: 12px" name="textcolor">
       <option style="COLOR: #000000" value="000000" selected>
       绝对黑色<option style="COLOR: #000080" value="000080">
       忧郁的蓝<option style="COLOR: #0000ff" value="0000ff">
       碧空蓝天<option style="COLOR: #008080" value="008080">
       灰蓝种族<option style="COLOR: #0080ff" value="0080ff">
       蔚蓝海洋<option style="COLOR: #8080ff" value="8080ff">
       清清之蓝<option style="COLOR: #8000ff" value="8000ff">
       发亮蓝紫<option style="COLOR: #aa00cc" value="aa00cc">
       紫的拘谨<option style="COLOR: #808000" value="808000">
       卡其制服<option style="COLOR: #808080" value="808080">
       伦敦灰雾<option style="COLOR: #ccaa00" value="ccaa00">
       卡布其诺<option style="COLOR: #800000" value="800000">
       苦涩心红<option style="COLOR: #ff0000" value="ff0000">
       正宗喜红<option style="COLOR: #ff0080" value="ff0080">
       爱的暗示<option style="COLOR: #ff00ff" value="ff00ff">
       红的发紫<option style="COLOR: #ff8080" value="ff8080">
       红旗飘飘<option style="COLOR: #ff8000" value="ff8000">
       黄金岁月<option style="COLOR: #ff80ff" value="ff80ff">
       紫金绣贴<option style="COLOR: #008000" value="008000">
       橄榄树绿<option style="COLOR: #345678" value="345678">我不知道</option>
      </select>
      表情:
      <select style="FONT-SIZE: 12px" name="expression">
       <option value="" selected>
       请选择<option value="笑着">
       笑着<option value="高兴地">
       高兴地<option value="含情脉脉">
       含情脉脉<option value="微笑">
       微笑<option value="幸福">
       幸福<option value="有点脸红">
       有点脸红<option value="使劲安慰">
       使劲安慰<option value="自言自语">
       自言自语<option value="差点要哭">
       差点要哭<option value="嚎啕大哭">
       嚎啕大哭<option value="一把鼻涕">
       一把鼻涕<option value="很无辜">
       很无辜<option value="流口水">
       流口水<option value="神秘兮兮">
       神秘兮兮<option value="幸灾乐祸">
       幸灾乐祸<option value="很不服气">
       很不服气<option value="不怀好意">
       不怀好意<option value="拳打脚踢">
       拳打脚踢<option value="不知所措">
       不知所措<option value="翻箱倒柜">
       翻箱倒柜<option value="很遗憾">
       很遗憾<option value="很严肃">
       很严肃<option value="善意警告">
       善意警告<option value="正气凛然">
       正气凛然<option value="哈欠连天">
       哈欠连天<option value="小声讲">
       小声讲<option value="大声喊叫">
       大声喊叫<option value="尖叫一声">
       尖叫一声<option value="遗憾地说">
       遗憾地说<option value="无精打采">
       无精打采<option value="想吐">
       想吐<option value="真诚">
       真诚<option value="不好意思">
       不好意思<option value="高兴地唱">
       高兴地唱<option value="轻轻地唱">
       轻轻地唱<option value="很诧异">
       很诧异<option value="依依不舍">依依不舍</option>
      </select>
      聊天对象:
      <SELECT style="FONT-SIZE: 12px" name="userlist">
       <OPTION value="大家" selected>所有的人</OPTION>
      </SELECT>
      <INPUT id="isSecret" type="checkbox" name="isSecret">密谈
      <br>
         <br />
         内容:
      <INPUT id="content" onkeydown="if (event.keyCode == 13) {send();return false;}" type="text"
       maxLength="100" size="70" name="content"> <INPUT id="btnSend" onclick="send();return false;" type="button" value="发送" name="btnSend">
     </TD>
    </TR>
   </TABLE>
   <script language="javascript">
   refresh_chatcontent();
   refresh_onlineusers();
   </script>
  </form>
 </body>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -