社区
C#
帖子详情
当TextBox.Select(start,length)选择的内容需要拉动滚动才能看见时,怎样自动滚动选择内容到最顶?
阿良chjlcn
2006-10-20 06:32:18
当TextBox.Select(start,length)选择的内容需要拉动滚动才能看见时,怎样自动滚动选择内容到最顶?
...全文
92
2
打赏
收藏
当TextBox.Select(start,length)选择的内容需要拉动滚动才能看见时,怎样自动滚动选择内容到最顶?
当TextBox.Select(start,length)选择的内容需要拉动滚动才能看见时,怎样自动滚动选择内容到最顶?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Knight94
2006-10-20
打赏
举报
回复
How can I programmatically position the cursor on a given line and character of my richtextbox?
http://www.syncfusion.com/FAQ/WindowsForms/FAQ_c89c.aspx#q890q
jointan
2006-10-20
打赏
举报
回复
textBox1.ScrollToCaret();
c#
textbox
的
滚动
条总是指向最底端的简单解决方法
主要介绍了c#
textbox
的
滚动
条总是指向最底端的简单解决方法,
需要
的朋友可以参考下
第四个范例——
TextBox
家族
源代码 博文链接:https://cyhcheng.iteye.com/blog/140281
C# notepad 记事本和完整源码(仿微软)
仿微软,简单功能齐全的notepad记事本程序和源码,提供给初学者交流和学习。 对search方法略作修改,查不到字符
时
返回起始位置; public void button1_Click(object sender, Even
tAr
gs e) { if (
textBox
1.Text.
Length
> 0) { str =
textBox
1.Text; fm.searchStr =
textBox
1.Text; fm.matchCase = checkBox1.Checked; fm.upCheck = radioButton1.Checked; } else { str = fm.searchStr; checkBox1.Checked = fm.matchCase; radioButton1.Checked = fm.upCheck; } if (str == null) { MessageBox.Show("找不到" + str, "记事本"); } else { if (checkBox1.Checked) { if (radioButton2.Checked) {
select
+= fm.rich
TextBox
1.
Select
edText.
Length
; marker =
select
;
select
= fm.rich
TextBox
1.Find(str,
select
, Rich
TextBox
Finds.MatchCase); if (
select
== -1 ||
select
=marker) { marker = s
tar
t;
select
= s
tar
t; fm.rich
TextBox
1.
Select
ionS
tar
t = s
tar
t; if (
select
!= 0) fm.rich
TextBox
1.Find(str, 0,
select
, Rich
TextBox
Finds.Reverse | Rich
VB
自动
关机源码.rar
设置窗体的代码解释 Imports System.Diagnostics Public Class 设置窗体 Private shutTime As String '关机
时
间的字符串 Private IsToday As Boolean = True '判断是否是今天的变量 Private delay As Integer '延
时
多少秒放关机 Private lastTime As Integer '关机的倒计
时
Private action As String '关机或重启或注销 Private shellText As String '执行的命令字符串 Private firstShow As Boolean = True Private SysTime As Boolean = False Private autoHide As Boolean = True '启动
自动
隐藏 Private TotalData As New System.Diagnostics.PerformanceCounter("Network Interface", "Bytes Total/sec", "MS TCP Loopback interface") Private proTime As New System.Diagnostics.PerformanceCounter("Processor", "% Processor Time", "_Total") '双击右下角的图标的响应事件 Private Sub NotifyIcon1_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEven
tAr
gs) Handles NotifyIcon1.MouseDoubleClick If (Me.Visible = False) Then Me.Show() End If End Sub '重载窗体的关闭事件,使窗体隐藏 Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEven
tAr
gs) Handles MyBase.Closing e.Cancel = True '取消窗体的关闭动作 delayTime.Value = delay '还原delayTime控件的值 StrToItems() '还原ListBox的值 Me.Hide() End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles MyBase.Load ComboBox1.
Select
edIndex = 2 '设置默认选项 "每天" ComboBox2.
Select
edIndex = 4 '设置默认选项 "关机" Timer1.S
tar
t() readReg() '读取存放在注册表的信息 StrToItems() '把字符串的信息读取到ListBox delayTime.Value = delay '把延
时
时
间读取到delayTime控件 DateTimePicker1.Value = Today End Sub Private Sub 退出程序ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 退出程序ToolStripMenuItem.Click Me.Dispose() End Sub Private Sub 立即取消关机ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即取消关机ToolStripMenuItem1.Click Timer2.Stop() 取消窗体.Close() Shell("shutdown -a") Timer1.S
tar
t() End Sub Private Sub 设置关机计划ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 设置关机计划ToolStripMenuItem.Click If Me.Visible = False Then Me.Show() End If End Sub '点击确定按钮的事件处理 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles Button4.Click '判断是否要开机
自动
运行 If autoCheck.Checked Then 创建开机
自动
运行() Else 删除开机
自动
运行() End If If Me.HideCheck.Checked Then autoHide = True Else autoHide = False End If If Me.regCheck.Checked Then 禁止修改注册表() Else 取消禁止修改注册表() End If If Me.ManCheck.Checked Then 禁止使用任务管理器() Else 取消禁止使用任务管理器() End If If Me.SysTimeCheck.Checked Then SysTime = True Else SysTime = False End If '四舍五入delayTime控件的值 delay = Math.Round(delayTime.Value, MidpointRounding.AwayFromZero) Me.Hide() ItemsToStr() '把listBox的信息保存到字符串中 writeReg() '把字符串保存把注册表中 End Sub '取消按钮事件 Private Sub canelButton_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles canelButton.Click StrToItems() '还原ListBox的值 delayTime.Value = delay '还原delayTime控件的值 Me.Hide() End Sub '点击添加按钮 Private Sub addButton_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles addButton.Click Dim tempStr As String = "" If ComboBox1.Items.Item(ComboBox1.
Select
edIndex) = "指定日期" Then tempStr = DateTimePicker1.Value.ToShortDateString Else tempStr = ComboBox1.
Select
edItem End If tempStr &= "," & CStr(Math.Round(hourNum.Value, MidpointRounding.AwayFromZero)) & ":" & CStr(Math.Round(minNum.Value, MidpointRounding.AwayFromZero)) & ":" & CStr(Math.Round(secNum.Value, MidpointRounding.AwayFromZero)) & ","
Select
Case ComboBox2.
Select
edItem Case "打开网址" tempStr &= "打开网址" & "[" &
TextBox
1.Text.Replace(";", ";").Replace(":", ":") & "]" Case "提醒信息" tempStr &= "提醒信息" & "[" &
TextBox
1.Text.Replace(";", ";").Replace(":", ":") & "]" Case "打开文件" tempStr &= "打开文件" & "[" &
TextBox
1.Text.Replace(";", ";").Replace(":", ":") & "]" Case Else tempStr &= ComboBox2.
Select
edItem End
Select
ListBox1.Items.Add(tempStr) End Sub '点击清除按钮 Private Sub clearButton_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles clearButton.Click ListBox1.Items.Clear() End Sub '把ListBox的值保存到字符串ShutTime Private Sub ItemsToStr() Dim i As Integer shutTime = "" For i = 0 To ListBox1.Items.Count - 1 '把ListBox中的各项连接到shutTime shutTime &= ListBox1.Items.Item(i) & ";" Next If shutTime "" Then '去除最后一个 ";" shutTime = Mid(shutTime, 1, shutTime.
Length
- 1) End If End Sub '把字符串ShutTime的值还原到ListBox Private Sub StrToItems() If shutTime "" Then '如果shutTime有保存信息 Dim temp() As String = shutTime.Split(";") 'temp字符串数组存放shutTime以";"分隔的各个字符子串 Dim t As String 't存放temp字符串数组的一项 ListBox1.Items.Clear() For Each t In temp If Not (Mid(t, 1, 2) = "今天" And Not IsToday) Then '如果今天还没过了 ListBox1.Items.Add(t) End If Next End If End Sub '读取注册表保存的信息 Private Sub readReg() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey Try key = Microsoft.Win32.Registry.LocalMachine subkey = key.OpenSubKey("SOFTWARE\AutoShutdown") shutTime = subkey.GetValue("time") delay = CInt(subkey.GetValue("delayTime")) autoHide = subkey.GetValue("autoHide") If (CStr(Today()) subkey.GetValue("day")) Then IsToday = False End If Catch ex As Exception shutTime = "" IsToday = True End Try End Sub Private Sub 禁止修改注册表() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser subkey = key.CreateSubKey("software\microsoft\windows\currentversion\policies\system") subkey.SetValue("disableregistrytools", 1) End Sub Private Sub 取消禁止修改注册表() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser subkey = key.CreateSubKey("software\microsoft\windows\currentversion\policies\system") subkey.SetValue("disableregistrytools", 0) End Sub Private Sub 禁止使用任务管理器() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser subkey = key.CreateSubKey("software\microsoft\windows\currentversion\policies\system") subkey.SetValue("DisableTaskMgr", 1) End Sub Private Sub 取消禁止使用任务管理器() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser subkey = key.CreateSubKey("software\microsoft\windows\currentversion\policies\system") subkey.SetValue("DisableTaskMgr", 0) End Sub '将
需要
保存的信息写入注册表 Private Sub writeReg() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine subkey = key.CreateSubKey("SOFTWARE\AutoShutdown") subkey.SetValue("time", shutTime) subkey.SetValue("day", CStr(Today())) subkey.SetValue("delayTime", CStr(delay)) subkey.SetValue("autoHide", autoHide) End Sub '点击删除按钮 Private Sub delButton_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles delButton.Click Dim delIndex As Integer = ListBox1.
Select
edIndex If delIndex -1 Then ListBox1.Items.RemoveAt(delIndex) End If End Sub '最小化窗体,这里指隐藏窗体 Private Sub 最小化ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 最小化ToolStripMenuItem.Click If Me.Visible = True Then StrToItems() delayTime.Value = delay Me.Hide() End If End Sub Private Sub 创建开机
自动
运行() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine subkey = key.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run") subkey.SetValue("定
时
自动
关机", Application.ExecutablePath) End Sub Private Sub 删除开机
自动
运行() Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine subkey = key.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True) subkey.DeleteValue("定
时
自动
关机") End Sub '关闭显示器 Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer Public Const WM_SYSCOMMAND = &H112 Public Const SC_MONITORPOWER = &HF170 '关闭显示器 Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long 'Timer1的Tick事件,来监视现在的
时
间是否应该关机或别的了 Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.Even
tAr
gs) Handles Timer1.Tick Static nowTime As Date = Now updataMsg() If SysTime Then If (Now nowTime) Then Today = nowTime TimeOfDay = nowTime End If End If nowTime = nowTime.AddSeconds(1) If (shutTime "") Then Dim temp1() As String = shutTime.Split(";") 'temp1字符串数组存放shutTime以";"分隔的各个字符子串 Dim temp2() As String, i As Integer 'temp2字符串数组存放temp1某项的字符串以","或":"分隔的字符子串 Dim TimeOut As Boolean = False 'TimeOut存放是否
时
间到了 For i = 0 To temp1.
Length
- 1 temp2 = temp1(i).Split(New Char() {",", ":"}) If IsTimeOut(temp2) Then '判断
时
间是否到了 TimeOut = True action = temp2(4) '是"关机","注销","重启" End If Next If TimeOut Then '如果
时
间到
Select
Case Mid(action, 1, 4) '根据action肯定命令字符串 Case "关闭计算" shellText = "shutdown -s -f -t 0" Case "重启计算" shellText = "shutdown -r -f -t 0" Case "注销用户" shellText = "shutdown -l -f -t 0" Case "关闭显示" SendMessage(Me.Handle.ToInt32(), WM_SYSCOMMAND, SC_MONITORPOWER, 1) Exit Sub Case "锁定计算" shellText = "rundll32.exe user32.dll, LockWorkStation" Case "打开文件" System.Diagnostics.Process.S
tar
t(Mid(action, 6, action.
Length
- 6).Replace(":", ":")) Exit Sub Case "提醒信息" MsgBox(Mid(action, 6, action.
Length
- 6), , "提醒信息") Exit Sub Case "打开网址" System.Diagnostics.Process.S
tar
t(Mid(action, 6, action.
Length
- 6).Replace(":", ":")) Exit Sub End
Select
lastTime = delay '倒计
时
等于延
时
Timer2.S
tar
t() '倒计
时
开始 取消窗体.Show() '倒计
时
窗口打开 Timer1.Stop() End If End If End Sub '判断
时
间是否到了 Private Function IsTimeOut(ByRef t() As String) As Boolean '如果
时
分秒都相等 If t(1) = CStr(Hour(Now())) And t(2) = CStr(Minute(Now()) And t(3) = Second(Now)) Then
Select
Case t(0) Case "每天" Return True Case "今天" Return True Case "每周二" If Weekday(Now) = FirstDayOfWeek.Tuesday Then Return True End If Case "每周六" If Weekday(Now) = FirstDayOfWeek.Saturday Then Return True End If Case "每周日" If Weekday(Now) = FirstDayOfWeek.Sunday Then Return True End If Case "每周三" If Weekday(Now) = FirstDayOfWeek.Wednesday Then Return True End If Case "每周四" If Weekday(Now) = FirstDayOfWeek.Thursday Then Return True End If Case "每周五" If Weekday(Now) = FirstDayOfWeek.Friday Then Return True End If Case "每周一" If Weekday(Now) = FirstDayOfWeek.Monday Then Return True End If Case "每周一至周五" If Weekday(Now) > FirstDayOfWeek.Sunday And Weekday(Now) < FirstDayOfWeek.Saturday Then Return True End If Case Else If (t(0) = Today.ToShortDateString) Then Return True End If End
Select
End If Return False End Function '刷新Msg控件 Private Sub updataMsg() Dim xingqi As String = ""
Select
Case Weekday(Now) Case 1 xingqi = "星期天" Case 2 xingqi = "星期一" Case 3 xingqi = "星期二" Case 4 xingqi = "星期三" Case 5 xingqi = "星期四" Case 6 xingqi = "星期五" Case 7 xingqi = "星期六" End
Select
msg.Text = "当前
时
间" & Now().ToLongDateString & " " & Now().ToLongTimeString & " " & xingqi & " CPU使用" & Format(proTime.NextValue, "#0") & "% 网速" & Format(TotalData.NextValue / 1024, "########0.00") & "KB/S" Me.NotifyIcon1.Text = msg.Text End Sub '倒计
时
处理事件 Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles Timer2.Tick If lastTime = 0 Then '如果
时
间到 Shell(shellText, AppWinStyle.Hide) 取消窗体.Label1.Text = "正在" & action Else 取消窗体.Label1.Text = "离" & action & "还有" & lastTime & "秒" '显示倒计
时
lastTime -= 1 End If End Sub Private Sub 设置窗体_Shown(ByVal sender As Object, ByVal e As System.Even
tAr
gs) Handles Me.Shown If autoHide Then Me.Hide() End If End Sub Private Sub ComboBox2_
Select
edIndexChanged(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles ComboBox2.
Select
edIndexChanged
Select
Case ComboBox2.
Select
edItem Case "打开网址" Button1.Visible = False
TextBox
1.Width = 299
TextBox
1.Visible = True Case "提醒信息" Button1.Visible = False
TextBox
1.Width = 299
TextBox
1.Visible = True Case "打开文件" Button1.Visible = True
TextBox
1.Width = 209
TextBox
1.Visible = True Case Else Button1.Visible = False
TextBox
1.Visible = False End
Select
End Sub Private Sub ComboBox1_
Select
edIndexChanged(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles ComboBox1.
Select
edIndexChanged If ComboBox1.
Select
edItem = "指定日期" Then DateTimePicker1.Visible = True Else DateTimePicker1.Visible = False End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles Button1.Click If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
TextBox
1.Text = OpenFileDialog1.FileName End If End Sub Private Sub 立即关机ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即关机ToolStripMenuItem.Click Shell("shutdown -s -f -t 0") End Sub Private Sub 立即重启ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即重启ToolStripMenuItem.Click Shell("shutdown -r -f -t 0") End Sub Private Sub 立即注销ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即注销ToolStripMenuItem.Click Shell("shutdown -l -f -t 0") End Sub Private Sub 立即锁定计算机ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即锁定计算机ToolStripMenuItem.Click Shell("rundll32.exe user32.dll, LockWorkStation") End Sub Private Sub 立即关闭显示器ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.Even
tAr
gs) Handles 立即关闭显示器ToolStripMenuItem.Click SendMessage(Me.Handle.ToInt32(), WM_SYSCOMMAND, SC_MONITORPOWER, 1) End Sub Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEven
tAr
gs) Handles LinkLabel1.LinkClicked System.Diagnostics.Process.S
tar
t("http://lywang.5d6d.com/space-uid-1.html") End Sub End Class
.net
textbox
实现模糊查询
时
,动态加载显示提示框
textbox
模糊查询,动态加载提示框
C#
111,096
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章