当前位置: 首页 > 工具软件 > appendText > 使用案例 >

C#RichTextBox的 RichTextBox.Focus();rtbLog.AppendText(msg);ReadOnly

霍锦
2023-12-01
垂直滚动条始终在RichTextBox的底部
你需要设置HideSelection 为 false 并且用 AppendText来插入新数据
例如richTextBox.AppendText("内容");

让richTextBox2一直获取焦点
则在促发事件的时候
增加richTextBox2.Focus();
ReadOnly不可被写改变你内容
View.cs
using System;
using SysChargeInterface;


namespace AutoSend
{
    public class View
    {
        public static MainForm frm;
        public static void write(String message)
        {
            String time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            String mes = time + ": " + message + "\n";
            
             //如果当前的文本和以前的文本之和 大于文本框的最大长度,进行清空
            if (frm.rtbLog.TextLength + mes.Length >= frm.rtbLog.MaxLength)
                frm.rtbLog.Text = "";


            //frm.rtbLog.AppendText(mes);
            frm.WirtelogTh(mes);
        }
    }
}
 
MainForm.cs
 using System;using System.Windows.Forms;using AutoSend;namespace SysChargeInterface{    public partial class MainForm : Form    {        public MainForm()        {            InitializeComponent();        }        private void Form1_Load(object sender, EventArgs e)        {        }        private void Form1_Load_1(object sender, EventArgs e)        {        }        public void WirtelogTh(String msg)        {            this.rtbLog.Invoke(new EventHandler(delegate            {                if (rtbLog.TextLength + msg.Length >= rtbLog.MaxLength)                    rtbLog.Text = "";                rtbLog.AppendText(msg);                rtbLog.Focus();            }));        }        //getCharge提交订单        Log log = new Log();        private void btnGetCharge_Click(object sender, EventArgs e)        {            //if (tbxAgentId.Text.ToString() == "" || tbxTelephone.Text.ToString() == "" || tbxTelephoneType.Text.ToString() == "" || tbxMoney.Text.ToString() == "" || tbxChargeMode.Text.ToString() == "" || tbxChargeMode.Text.ToString() == "" || tbxRequestId.Text.ToString() == "" || tbxExtendInfo.Text.ToString() == "" || tbxCallBackUrl.Text.ToString() == "" || tbxGetChargeUrl.Text.ToString() == "" || tbxMD5Key.Text.ToString() == "")            //{            //    MessageBox.Show("必要参数填写不完整!");            //}            //else            //{                String SubTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:s");//订单日期                String AgentId = tbxAgentId.Text.ToString();                String Telephone = tbxTelephone.Text.ToString();                String TelephoneType = tbxTelephoneType.Text.ToString();                String Money = tbxMoney.Text.ToString();                String ChargeMode = tbxChargeMode.Text.ToString();                String RequestID = tbxRequestId.Text.ToString();                String ExtendInfo = tbxExtendInfo.Text.ToString();                String CallBackUrl = tbxCallBackUrl.Text.ToString();                String getChargeUrl = tbxGetChargeUrl.Text.ToString();                String MD5Key = tbxMD5Key.Text.ToString();                String para = "AgentID=" + AgentId + "&Telephone=" + Telephone + "&TelephoneType=" + TelephoneType + "&Money=" + Money                    + "&ChargeMode=" + ChargeMode + "&RequestID=" + RequestID + "&ExtendInfo=" + ExtendInfo + "&CallBackUrl=" + CallBackUrl + "&SubTime=" + SubTime;                String Hmac = Share.MD5(para + "&Key=" + MD5Key);                String url = getChargeUrl + "/boinf_getCharge.do?" + para + "&Hmac=" + Hmac;                AutoSend.View.write("请求Url:" + url);                log.Debug("请求Url:" + url);                string result = Share.getPage(url, null);                AutoSend.View.write("提交返回:"+result);                log.Debug("提交返回:" + result);            //}        }        //Query        private void btnQuery_Click(object sender, EventArgs e)        {            //if (tbxAgentId.Text.ToString() == "" || tbxRequestId2.Text.ToString() == "" || tbxOrderID.Text.ToString() == "" || tbxGetBalanceUrl.Text.ToString() == "" || tbxMD5Key.Text.ToString() == "")            //{            //    MessageBox.Show("必要参数填写不完整!");            //}            //else            //{                String AgentId = tbxAgentId.Text.ToString();                String RequestID = tbxRequestId2.Text.ToString();                String OrderID = tbxOrderID.Text.ToString();                String getBalanceUrl = tbxGetBalanceUrl.Text.ToString();                String MD5Key = tbxMD5Key.Text.ToString();                String para = "AgentID=" + AgentId + "&OrderID=" + OrderID + "&RequestID=" + RequestID;                String Hmac = Share.MD5(para + "&Key=" + MD5Key);                String url = getBalanceUrl + "/boinf_QueryChargeRecord.do?" + para + "&Hmac=" + Hmac;                AutoSend.View.write("请求Url:" + url);                log.Debug("请求Url:" + url);                string result = Share.getPage(url, null);                AutoSend.View.write("充值结果查询返回:" + result);                log.Debug("充值结果查询返回:" + result);            //}        }        private void btnGetBalance_Click(object sender, EventArgs e)        {            //if (tbxAgentId.Text.ToString() == "" || tbxQueryUrl.Text.ToString() == "" || tbxMD5Key.Text.ToString() == "")            //{            //    MessageBox.Show("必要参数填写不完整!");            //}            //else            //{                String AgentId = tbxAgentId.Text.ToString();                String queryUrl = tbxQueryUrl.Text.ToString();                String MD5Key = tbxMD5Key.Text.ToString();                String para = "AgentID=" + AgentId;                String Hmac = Share.MD5(para + "&Key=" + MD5Key);                String url = queryUrl + "/boinf_getBalance.do?" + para + "&Hmac=" + Hmac;                AutoSend.View.write("请求Url:" + url);                log.Debug("请求Url:" + url);                string result = Share.getPage(url, null);                AutoSend.View.write("代理商查询返回:" + result);                log.Debug("代理商查询返回:" + result);            //}        }    }} 
 
Program.cs
using System;
using System.Collections.Generic;
using AutoSend;
using System.Windows.Forms;


namespace SysChargeInterface
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            MainForm frm = new MainForm();
            AutoSend.View.frm = frm;
            Application.Run(frm);
        }
    }
}

 类似资料: