textbox和richtextbox(如何用C#编写一个打字程序,用textbox与richtextbox做)
本文目录
- 如何用C#编写一个打字程序,用textbox与richtextbox做
- vb from2中的RichTextBox1与textbox1书写进去的内容怎么在Form1中的RichTextBox1与listbox1中显示出来呢
- vb.net中的txtbox和richtxtbox控件为什么不能输入汉字
- VB 文本数据行数有2533行,用textbox是不是显示不下,用richtextbox却显示不了水平滚动条
如何用C#编写一个打字程序,用textbox与richtextbox做
之前load的一个VB的打字程序的一段, 思路和语言跟C#差不多,你借鉴一下吧Private Sub txtType_Change() Dim Start As Integer, i As Integer On Error Resume Next Start = txtType.SelStart ’If DelTF = True And Len(txtType.Text) = 1 Then txtType.Text = "" Hang = Num \ 44 ’打完一行,就开始打下一行(计算现在应该打第几行) ’If Hang = 8 Then Hang = 0 Hang = Hang Mod 8 ’Hang始终都是0-7的顺序下去 No = Num Mod 44 ’每一行的第几个 If Start = 0 Or DelTF = True Then Exit Sub ’如果在KeyDown中按下删除键则退出Chang ’If Hang = 3 And No = (44 - 5) Then ’到第4行倒数第6个,则第1行隐藏,第8行现身 ’ lblEgg(0).Caption = "" ’ ’lblegg(0).Visible=False ’可能不需要隐藏,因为是透明模式,没有文字效果与隐藏一样 ’ For i = 1 To 44 ’卸掉现在行的前面第3行,中间隔着2行 例:(44*3+39)=171,终止:171-44*2-39,开始:171-44*3-39+1 ’ Unload lblOK(i) ’卸掉第1行的标示对错的颜色标签,节约内存 ’ Next ’实时错误’340’,控件数组元素’1’不存在,卸过一次后又再卸 ’ lblEgg(7).Caption = Mid$(StrText, mNumber * 44 + 1, 44) ’继续的文字内容(后面第4行,如果例现在是第6行,后面剩2行,后第4行就越过算到正数第2行 ’End If ’If Hang 》= 3 And No = (44 - 6) Then ’(44 - 5),上面示例旧文本的消失与显示新文本 If lblEgg((Hang + 4) Mod 8).Caption = "" And No = (44 - 6) Then ’If lblEgg(Hang - 3).Caption 《》 "" Then ’检测前面第3行是否已经空掉,因为怕重复,如打过第4行第40个,然后又删除,然后再打会重复,导致后面第4行的内容会变化 If lblEgg((Hang + 5) Mod 8).Caption 《》 "" Then lblEgg((Hang + 5) Mod 8).Caption = "" ’’lblEgg((Hang - 3) Mod 8).Caption = "" For i = Num - 44 * 3 - 39 + 1 To Num - 44 * 2 - 39 + 1 Unload lblOK(i) Next lblEgg((Hang + 4) Mod 8).Caption = Mid$(StrText, mNumber * 44 + 1, 44) ’(Hang + 4) Mod 7 mNumber = mNumber + 1 End If End If If Hang 》= 6 And No = (44 - 6) Then TypeSPace = True ’模拟打字区的旧文本消失,当打到第6行(倒数第2行),第0行开始消失,Hang-6(前第6行),Hang+2(后第2行) If lblType((Hang + 2) Mod 8).Caption 《》 "" And TypeSPace Then ’TypeHang = Hang + 2 ’if typehang=8 then typehang=0 ’lblType(Hang - 6).Caption = "" lblType((Hang + 2) Mod 8).Caption = "" End If lblType(Hang).Caption = lblType(Hang).Caption & Mid$(txtType.Text, Len(txtType.Text), 1) ’txtType.Text ’Debug.Print txtType.SelStart ’Debug.Print Num Num = Num + 1 Load lblOK(Num) If Mid$(lblType(Hang).Caption, Len(lblType(Hang).Caption), 1) = Mid$(lblEgg(Hang).Caption, Len(lblType(Hang).Caption), 1) Then lblOK(Num).BackColor = vbGreen ’正确就用绿色,65280 lblOK(Num).Tag = 1 mTrue = mTrue + 1 ’正确的字数 lblTrue.Caption = "对:" & mTrue Else lblOK(Num).BackColor = vbRed ’错误就用红色,255 lblOK(Num).Tag = 0 mFalse = mFalse + 1 ’错误的字数 lblFalse.Caption = "错:" & mFalse End If ’算出正确率 mTF = mTrue / (mTrue + mFalse) * 1000 lblTF.Caption = mTF With lblOK(Num) If Num Mod 44 = 1 Then ’Select Case Num ’Case 44 * 1 + 1 ’Hang = Num \ 44 ’打完一行,就开始打下一行 .Left = 50 Else .Left = lblOK(Num - 1).Left + lblOK(Num - 1).Width ’上一个之后 End If If (Num - 1) \ 44 》= 1 Then ’如果不是第一行,每行44个字 ’.Top = 50 + (Num - 1) \ 30 * 180 ’TextHeight(Mid$(txtType.Text, Len(lblType.Caption), 1)) ’.Top = lblOK(Num - 30).Top + lblOK(Num - 30).Height ’ 180 + 60 .Top = lblEgg(Hang).Top Else .Top = 0 ’50 End If .Caption = Mid$(lblEgg(Hang).Caption, Len(lblType(Hang).Caption), 1) .AutoSize = True .Visible = True End With Line1.X1 = lblOK(Num).Left + lblOK(Num).Width: Line1.X2 = lblOK(Num).Left + lblOK(Num).Width Line1.Y1 = lblOK(Num).Top: Line1.Y2 = lblOK(Num).Top + 250 If Num Mod 44 = 0 And Num 《》 0 Then ’Hang 《》 0 Line1.X1 = lblType(Hang + 1).Left - 1: Line1.X2 = lblType(Hang + 1).Left - 1 Line1.Y1 = lblType(Hang + 1).Top: Line1.Y2 = lblType(Hang + 1).Top + 250 End IfEnd Sub
vb from2中的RichTextBox1与textbox1书写进去的内容怎么在Form1中的RichTextBox1与listbox1中显示出来呢
很简单,这样就行:Form1.Text1.Text = Form2.RichTextBox1.Text
vb.net中的txtbox和richtxtbox控件为什么不能输入汉字
你是用输入法的吧,这个是.Net Framework的Bug吧,用输入法的步骤如下:1、首先保证文本框有焦点2、按下2次Ctrl+空格3、切换到自己要用的输入法这样一般都可以了
VB 文本数据行数有2533行,用textbox是不是显示不下,用richtextbox却显示不了水平滚动条
textbox 最多能显示 32K的字符。你把richtextbox 的ScrollBars 属性设为 BothRightMargin 属性设为 10000(如果不够你可以设的更大一些)这样就会有水平滚动条了
本文相关文章:
更多文章:
C语言怎么用递归法求阶乘?利用递归法计算斐波那契数列,由主函数指定输出该数列某一项,调用该函数计算该项的值,再有主函数输出
2024年7月5日 10:40
ospf协议是什么(OSPF路由协议,OSPF路由协议是什么意思)
2023年9月29日 10:20
output是什么意思中文翻译是什么意思(output什么意思)
2024年7月22日 09:32
selenium离线安装教程(求selenium IDE的下载步骤)
2024年7月20日 22:03
checkedlistbox全选(C#中checkedlistbox的用法)
2024年7月10日 10:03
extension of stay(超简单商务英语,要的是规范, 请正规翻译谢谢 :))
2024年7月20日 07:07
matlab软件feval函数(matlab中的feval函数怎么用)
2024年7月23日 20:23
个人主页的网站(申请个人主页的网站,不知道哪个是最好或挺好的)
2024年8月27日 05:45
java连接sqlserver数据库教程(JAVA连接SQL数据库)
2024年7月22日 23:34