Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327

Копировать, выделить, вставить

10.05.2013, 09:49. Показов 2743. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как можно программно выделить текст, скопировать его и вставить?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.05.2013, 09:49
Ответы с готовыми решениями:

MSFlexGrid. Функции копировать и вставить
Подскажите товарищи как реализовать поддержку данных функций(достаочно лишь с помощью сочетаний ctr+c, ctr-v). Ну или Посоветуйте где можно...

Копировать - вставить столбцы в Excel VBA
Здравствуйте! Есть модуль, который пробегает по столбцу, ищет последнюю запись, копирует информацию, вставляет в другой Лист. Все...

Создать раздел меню "Правка" и продумать логику команд "копировать", "вставить"
Здравствуйте! Все никак не могу написать код для раздела меню Правка! Есть главная форма! На этой форме есть меню правка,в которых есть...

15
3 / 3 / 0
Регистрация: 05.03.2013
Сообщений: 11
10.05.2013, 11:15
Делал для картинки. Для текста принцип тот же
VB.NET
1
2
3
4
5
6
7
        Dim Получатель As IDataObject = Clipboard.GetDataObject()
        Dim bmap As Bitmap
                If Получатель.GetDataPresent(GetType(System.Drawing.Bitmap)) Then
            ' то записать их из БО в bmap в формате BITMAP
            bmap = CType(Получатель.GetData(GetType(Drawing.Bitmap)), Bitmap)
            PictureBox1.Image = bmap
        End If
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
10.05.2013, 11:54
Цитата Сообщение от arsen1101995 Посмотреть сообщение
выделить текст, скопировать его и вставить
Откуда и куда? Это вопрос принципиальный.
0
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
10.05.2013, 12:32  [ТС]
Из текстового редактора, в TextBox..)

Добавлено через 1 минуту
Mahno74, а если Вам не сложно, можете объяснить??
Просто, мне ничего не понятно(
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
10.05.2013, 12:41
Цитата Сообщение от arsen1101995 Посмотреть сообщение
Из текстового редактора
Из какого текстового редактора? Весь текст или его часть?
Если весь, то эмулировать ( послать в тот редактор) нажатие клавиш Ctrl+a и потом Ctrl+c. А в свой TextBox вставить из буфера обмена.
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
10.05.2013, 13:47
EM_SETSEL, WM_COPY, WM_PASTE если текстовое поле. Нужно знать только хэндл окна.
0
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
10.05.2013, 19:56  [ТС]
Pro_grammer, а как вставить из буфера в textbox?(программно)

Добавлено через 28 секунд
The trick, можете пример скинуть?
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
10.05.2013, 22:24
Цитата Сообщение от arsen1101995 Посмотреть сообщение
а как вставить из буфера в textbox?(программно)
Visual Basic
1
Text1.Text = Clipboard.GetText
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18031 / 7734 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
10.05.2013, 22:32
Visual Basic
1
text1.text=clipboard.gettext()
или одним из способов: Работа с буфером обмена
0
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
10.05.2013, 22:40  [ТС]
Спасибо большое)
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
11.05.2013, 00:21
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
Private Const WM_GETTEXTLENGTH = &HE
Private Const WM_GETTEXT = &HD
Private Const PS_SOLID = 0
Private Const BS_NULL = 1
Private Type POINTAPI
    X As Long
    Y As Long
End Type
Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type
Private Type LOGBRUSH
    lbStyle As Long
    lbColor As Long
    lbHatch As Long
End Type
Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function CreatePen Lib "gdi32" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long
Private Declare Function CreateBrushIndirect Lib "gdi32" (lpLogBrush As LOGBRUSH) As Long
Private Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long
Private Declare Function Rectangle Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long
 
Dim Capture As Boolean, SelWnd As Long, Old As Long, Pen As Long, Brush As Long
 
Private Sub cmdGetText_Click()
    Dim L As Long, Txt As String
    If SelWnd = 0 Then Exit Sub
    L = SendMessage(SelWnd, WM_GETTEXTLENGTH, 0, ByVal 0)
    If L = 0 Then Exit Sub
    Txt = Space(L + 1)
    Call SendMessage(SelWnd, WM_GETTEXT, L + 1, ByVal Txt)
    txtOutput.Text = Txt
End Sub
Private Sub cmdPick_Click()
    Dim lb As LOGBRUSH
    lb.lbStyle = BS_NULL
    Capture = True
    Old = 0
    Pen = CreatePen(PS_SOLID, 3, vbRed)
    Brush = CreateBrushIndirect(lb)
    SetCapture Me.hwnd
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Capture Then
        Dim Pt As POINTAPI, Rc As RECT
        Capture = False
        Pt.X = X: Pt.Y = Y
        ClientToScreen Me.hwnd, Pt
        SelWnd = WindowFromPoint(Pt.X, Pt.Y)
        Me.Caption = SelWnd
        ReleaseCapture
        DeleteObject Pen
        DeleteObject Brush
        If Not (Old = 0) Then
            GetClientRect Old, Rc
            InvalidateRect Old, Rc, True
        End If
    End If
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Capture Then
        Dim Rc As RECT, Pt As POINTAPI, Cur As Long, DC As Long, dcPen As Long, dcBrush As Long
        Pt.X = X: Pt.Y = Y
        ClientToScreen Me.hwnd, Pt
        Cur = WindowFromPoint(Pt.X, Pt.Y)
        If Not (Cur = Old) Then
            If Not (Old = 0) Then
                GetClientRect Old, Rc
                InvalidateRect Old, Rc, True
            End If
            GetClientRect Cur, Rc
            DC = GetDC(Cur)
            dcPen = SelectObject(DC, Pen)
            dcBrush = SelectObject(DC, Brush)
            Rectangle DC, Rc.Left, Rc.Top, Rc.Right, Rc.Bottom
            SelectObject DC, dcBrush
            SelectObject DC, dcPen
            ReleaseDC Cur, DC
            Old = Cur
        End If
    End If
End Sub
Без применения буфера обмена, извлекает текст из окна
Вложения
Тип файла: rar GetTExt.rar (1.9 Кб, 29 просмотров)
1
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
12.05.2013, 09:39  [ТС]
из какого окна?
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
12.05.2013, 09:48
Из любого, по его хендлу (текстовые поля, комбобоксы, формы и т.п.)
0
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
12.05.2013, 23:18  [ТС]
А из браузера можно?Или только из своей программы?

Добавлено через 10 часов 21 минуту
Ответьте пожалуйста.
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
12.05.2013, 23:26
Запусти проект, который я приложил и посмотри
0
0 / 0 / 0
Регистрация: 07.03.2013
Сообщений: 327
13.05.2013, 00:01  [ТС]
Извините, а почему он выдает только заголовок окна?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.05.2013, 00:01
Помогаю со студенческими работами здесь

Копировать - вставить
Проблема копировать (вырезать) - вставить 1. Через буфер обмена Windows ХР невозможно провести операцию копировать (вырезать) -...

Копировать и вставить
Привет Всем. кто поможет. в вюхе каа копировать и вставить документ. типа выделил документ копировал и вставил 1. докумет ответ ...

Вырезать, копировать и вставить
помогите пожалуйста, какая функция в делфи, в частности для MainMenu вырезания, копирования и вставки? я допустим ввожу слово в memo1 и при...

Копировать, вставить и отмена
Я делаю простой блокнот и мне нужно запрограмировать кнопки : вставить , копировать и отмена. Подскажите как сделать.

[Delphi] Копировать / Вставить
В общем мне необходим скрипт(пример), который содержимое Edit без занесения в регистр вставлял в после, где находится курсор


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru