如何在RichTextBox中自动按TAB键? [英] How can I auto press TAB key in RichTextBox?

查看:112
本文介绍了如何在RichTextBox中自动按TAB键?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我在VB.Net上写了一个Windows窗体应用程序。我在我的项目中使用了RichTextBox。 (它的名字是activeRichTextBox)。我从FileDialog添加多选图像。当我点击添加按钮时,所有多选图像都会在RTB中添加,不会有空格。但是,我想添加带空格的图像(比如按下TAB按钮)。粘贴图像后我使用SendKeys.Send({TAB})命令。但它不起作用。我怎样才能成功让这个工作吗?



 公共  Sub  InsertPicture()
尝试
Dim GetPicture 作为 OpenFileDialog
GetPicture.Multiselect = True
GetPicture.Filter = PNGs(* .png),位图(* .bmp) ,GIF(* .gif),JPEGs(* .jpg)| * .bmp; * .gif; *。jpg; * .png | PNGs(* .png)| * .png | Bitmaps(* .bmp)| * .bmp | GIFs(* .gif)| * .gif | JPEGs(* .jpg)| * .jpg
GetPicture.FilterIndex = 1
GetPicture.InitialDirectory = C:\
如果 GetPicture.ShowDialog = Windows.Forms.DialogResult.OK 然后
对于 a < span class =code-keyword> As 整数 = 0 GetPicture.FileNames.Count - 1
Dim SelectedPicture As String = GetPicture.FileNames(a)
Dim cboard As Object = Clipboard.GetData(System.Windows.Forms.DataFormats .Text)
图片= 位图(SelectedPicture)
new_Bitmap = 位图(图片, 200 200
new_Bitmap.Tag = SelectedPicture
Clipboard.SetImage(new_Bitmap)
Dim PictureFormat As DataFormats.Format = DataFormats.GetFormat(DataFormats.Bitmap)
如果 activeRichTextBox.CanPaste(PictureFormat)然后
activeRichTextBox.Paste(PictureFormat)
SendKeys.Send( {TAB}
结束 如果
剪贴板.Clear()
Clipboard.SetText(cboard)
下一步
结束 如果
< span class =code-keyword> Catch ex As 异常
MessageBox.Show(ex.Message)
结束 尝试
结束 Sub

解决方案

尝试按照图片的方式粘贴标签。

Hi,

I write a Windows Form Application in VB.Net. I use a RichTextBox in my project. (It's name is activeRichTextBox). I add multi-selected images from FileDialog. When I click on add button, all multi-selected images are added in RTB without spaces. But, I'd like to add images with spaces (like pressed "TAB" button"). I use SendKeys.Send("{TAB}") command after paste image. But it doesn't work. How can I succeed to make this work?

Public Sub InsertPicture()
        Try
            Dim GetPicture As New OpenFileDialog
            GetPicture.Multiselect = True
            GetPicture.Filter = "PNGs (*.png), Bitmaps (*.bmp), GIFs (*.gif), JPEGs (*.jpg)|*.bmp;*.gif;*.jpg;*.png|PNGs (*.png)|*.png|Bitmaps (*.bmp)|*.bmp|GIFs (*.gif)|*.gif|JPEGs (*.jpg)|*.jpg"
            GetPicture.FilterIndex = 1
            GetPicture.InitialDirectory = "C:\"
            If GetPicture.ShowDialog = Windows.Forms.DialogResult.OK Then
                For a As Integer = 0 To GetPicture.FileNames.Count - 1
                    Dim SelectedPicture As String = GetPicture.FileNames(a)
                    Dim cboard As Object = Clipboard.GetData(System.Windows.Forms.DataFormats.Text)
                    Picture = New Bitmap(SelectedPicture)
                    new_Bitmap = New Bitmap(Picture, 200, 200)
                    new_Bitmap.Tag = SelectedPicture
                    Clipboard.SetImage(new_Bitmap)
                    Dim PictureFormat As DataFormats.Format = DataFormats.GetFormat(DataFormats.Bitmap)
                    If activeRichTextBox.CanPaste(PictureFormat) Then
                        activeRichTextBox.Paste(PictureFormat)
                        SendKeys.Send("{TAB}")
                    End If
                    Clipboard.Clear()
                    Clipboard.SetText(cboard)
                Next
            End If
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

解决方案

try pasting the tab in the way you do the picture.


这篇关于如何在RichTextBox中自动按TAB键?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆