|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Visual Basic 2008 |
|
VBA - Visual Basic 2008
|
Старожил Сообщения: 161 |
Подскажите как сделать так : допустим, если нажать на форме правой кнопкой мыши, то вылетет MsgBox(123), а если нажать левой, то MsgBox(098).
Спасибо за внимание. >>Блин, не дописал в названии темы : Действие при нажатии правой кнопки |
|
Отправлено: 17:47, 24-04-2008 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать Uzvern, REM это ж основа всего, коменты в коде после этого можно писать дальше по строчки. Тоже что и ' но в топике немного сливается, так что запостил через этот оператор.
Если он вне программы, то есть форма не активна, то без написания драйвер хука никак. А так с помощью свойства e., оно уже встречалось в теме. |
Отправлено: 01:03, 10-06-2008 | #111 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Мне нужно отловить положение курсора когда текст печатается.
Можешь показать на примере? Просто я пробовал с е., чет нифига не лоучается. |
Отправлено: 11:09, 10-06-2008 | #112 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать А ну это другое дело, только тогда в этом случаи терминологически надо говорить про положения каретки, а не курсора (координаты которого передаёт e.)
Private Sub RichTextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged Dim Position As Integer = Me.RichTextBox1.SelectionStart Dim Line As Integer = Me.RichTextBox1.GetLineFromCharIndex(Position) Dim Col As Integer = Position - Me.RichTextBox1.GetFirstCharIndexOfCurrentLine Label1.Text = Position & " " & Line & " " & Col End Sub |
Отправлено: 17:04, 10-06-2008 | #113 |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Как сделать цвету формы прозрачным?
|
Отправлено: 19:55, 10-06-2008 | #114 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать Вроде .NET добавил такую возможности компонентам (контролям), только для формы не предусмотрели
![]() И выходит что код Me.BackColor = Color.Transparent на выполнении вызывает ошибку Цитата:
Только теперь в самом деле окно будет прозрачное, даже для кликов мыши (но не для клавы). Элементы, если не указав им цвет явно, тоже станут прозрачными, так что для каждого елемента прийдётся прописать BackColor (TransparencyKey по желанию). Если лёгкие пути не для тебя и/или влом прописывать для всех элементов их цвета, то тогда есть арсенал реализации VB6/Delphi6 и не такого частного случая. Техника программирования сложных окон в Visual Basic Генератор кода Form GENERATOR 1.5 по принципу описанному в статьи. Впервые о технологии написания, а вернее рисования, нестандартных окон я узнал их этой статьи Delphi: Безбашенные окна. Несмотря на то, что там описано для Delphi я всё же рекомендую к чтению, поскольку описаны нюансы работы с такими окнами. |
|
Отправлено: 03:17, 11-06-2008 | #115 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать Весьма странно, что начинает прыгать и не выполнять выборку по Case. Тем не менее, ответ по избавлении от 9 Or 10 Or 12 Or 13 одним махом
Case Else GoTo generaciya Остальные комментарии в коде Public Class Form1 Dim i As Integer ' Dim v As Integer = 0 REM Оно нужно только для цикла, пускай там и создаётся '... Private Sub ret() 'Do Until v = 20 REM Чем обусловлен выбор именно этого цикла? 'v = v + 1 REM Если использовать For данной строчки не потребуется REM For и буду использовать For v As Integer = 0 To 20 generaciya: i = Int(Rnd() * 190 + 1) Select Case i Case 1 To 8 RichTextBox1.Text = RichTextBox1.Text & Chr(i) Case 11 RichTextBox1.Text = RichTextBox1.Text & Chr(i) Case 14 To 190 RichTextBox1.Text = RichTextBox1.Text & Chr(i) 'Case 9 Or 10 Or 12 Or 13 REM Если интересуют значение только 1-8, 11, 14-190 то здесь выборку не стоит делать, а написать Case Else GoTo generaciya End Select Next v End Sub '... |
Отправлено: 13:35, 11-06-2008 | #116 |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Admiral, неа. Все-равно 10-ка проскакивает!
![]() |
Отправлено: 18:16, 11-06-2008 | #117 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать Да уж. Первый самый код должен был нормально отработать, но идеологически боролся с последствиями, а не с причиной.
Вот следующий код ни шагу не даст i пока не убедится, что она не принимает нежелательных значений For v As Integer = 0 To 20 Do i = Int(Rnd() * 190 + 1) Loop Until (i <> 9) And (i <> 10) And (i <> 12) And (i <> 13) If i = 10 Then Debug.Print(i)Rem это контрольная строчка для проверки через Immediate Window появления значения i 10 REM подробнее про это окно здесь ->http://msdn.microsoft.com/en-us/library/f177hahy(VS.80).aspx RichTextBox1.Text = RichTextBox1.Text & Chr(i) Next v |
Отправлено: 19:03, 11-06-2008 | #118 |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Admiral, ты не поверишь...но она все-равно проскакивает!
![]() Вот, залью проект. Может чего с кодом накосматил... http://slil.ru/25889104 Объясни пожалуйса поподробней что это и как это можно использовать |
Отправлено: 20:45, 11-06-2008 | #119 |
Ветеран Сообщения: 1404
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 21:36, 11-06-2008 | #120 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBA - MS Visual Basic 2008 Expres Edition файлы проекта | Anton Naumov | Программирование и базы данных | 7 | 14-05-2010 14:09 | |
VBA - Visual basic 2008 | Anton Naumov | Программирование и базы данных | 1 | 02-01-2010 22:35 | |
visual basic 6 | иоанн | Хочу все знать | 1 | 27-04-2009 18:51 | |
visual basic 6 | guma | Программирование и базы данных | 1 | 26-04-2007 20:41 | |
Visual basic | carlos | Программирование и базы данных | 1 | 04-08-2003 02:03 |
|