![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Visual Basic 2008 |
|
VBA - Visual Basic 2008
|
Старожил Сообщения: 161 |
Подскажите как сделать так : допустим, если нажать на форме правой кнопкой мыши, то вылетет MsgBox(123), а если нажать левой, то MsgBox(098).
Спасибо за внимание. >>Блин, не дописал в названии темы : Действие при нажатии правой кнопки |
|
Отправлено: 17:47, 24-04-2008 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать В смысле что то типа picker'а? Т.е. написал я текст, а потом ткнул мышкой, и текст стал цвета пикселя на картинке? Можешь пример хоть примерно нарисовать?
|
------- Отправлено: 02:31, 08-10-2008 | #291 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Помогите отловить сообщение Windows о подтверждении удаления файла/папки и нажать кнопку "Нет".
|
Отправлено: 19:37, 28-10-2008 | #292 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Uzvern, а в когда оно появляется? Имеется в виду, в вашей программе или где? Это же по сути простой MessageBox с vbYesNo.
|
------- Отправлено: 01:38, 29-10-2008 | #293 |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Uzvern:
|
|
Отправлено: 12:18, 29-10-2008 | #294 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать хмм. а отслеживать необходимо через свою программу? Единственный вариант, который приходит в голову - отслеживать появление окон с заголовком "подтверждение удаления файла" и программно нажимать "нет". AutoIT работает по такому принципу.
|
------- Отправлено: 02:22, 30-10-2008 | #295 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать Uzvern, есть исходник на С++ http://ja.pastebin.ca/raw/890971
Данную защиту можно обойти использовав не Експлоре, например через FAR, TotalCommander и другие файловые менеджеры удалить файл всё же получится. |
Отправлено: 03:45, 30-10-2008 | #296 |
Старожил Сообщения: 161
|
Профиль | Сайт | Отправить PM | Цитировать Admiral, а обход мне неочень интересен, т.к. человек все-равно до этого не додумается. Щас буду пробовать переводить код с С++ в VB
![]() |
Отправлено: 08:30, 30-10-2008 | #297 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Доброго времени суток, Уважаемые обитатели форума!
Я начал изучать VB совсем недавно, примерно 1,5 месяца назад. Поиск на форуме мне к сожалению не помог, т.к. проблема видимо слишком простая и скорее всего не обсуждалась. А суть проблемы такова: нужно при нажатии кнопки Button2 сохранить данные из ListBox1в файл с расширением *.xls, ну или хотя бы в *.txt На машине установлено: Visual Studio 2008 Express, а в качестве офисного приложения OpenOffice 3.0 (MSOffice нет.) Собственно, если нет прямой возможности сохранить в *.xls, текстовый файл вполне подойдет. Вот текст приложения: Public Class Form2 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 'ЗАПОЛНЕНИЕ ФОРМЫ СИСТЕМНОГО БЛОКА 'Системный блок ListBox1.Items.Add(GroupBox7.Text) ListBox1.Items.Add(Label4.Text) ListBox1.Items.Add(TextBox4.Text) ListBox1.Items.Add(Label17.Text) ListBox1.Items.Add(TextBox5.Text) 'Материнская плата ListBox1.Items.Add(GroupBox1.Text) ListBox1.Items.Add(Label5.Text) ListBox1.Items.Add(ComboBox1.Text) ListBox1.Items.Add(Label6.Text) ListBox1.Items.Add(TextBox7.Text) 'Блок питания ListBox1.Items.Add(GroupBox2.Text) ListBox1.Items.Add(Label8.Text) ListBox1.Items.Add(ComboBox2.Text) ListBox1.Items.Add(Label7.Text) ListBox1.Items.Add(TextBox9.Text) 'HDD ListBox1.Items.Add(GroupBox3.Text) ListBox1.Items.Add(Label10.Text) ListBox1.Items.Add(ComboBox3.Text) ListBox1.Items.Add(Label9.Text) ListBox1.Items.Add(TextBox11.Text) 'FDD ListBox1.Items.Add(GroupBox4.Text) ListBox1.Items.Add(Label12.Text) ListBox1.Items.Add(ComboBox4.Text) ListBox1.Items.Add(Label11.Text) ListBox1.Items.Add(TextBox13.Text) 'DVD ListBox1.Items.Add(GroupBox5.Text) ListBox1.Items.Add(Label14.Text) ListBox1.Items.Add(ComboBox5.Text) ListBox1.Items.Add(Label13.Text) ListBox1.Items.Add(TextBox15.Text) 'Сетевая карта ListBox1.Items.Add(GroupBox6.Text) ListBox1.Items.Add(Label16.Text) ListBox1.Items.Add(ComboBox6.Text) ListBox1.Items.Add(Label15.Text) ListBox1.Items.Add(TextBox17.Text) 'Видеокарта ListBox1.Items.Add(GroupBox7.Text) ListBox1.Items.Add(Label18.Text) ListBox1.Items.Add(ComboBox7.Text) ListBox1.Items.Add(Label19.Text) ListBox1.Items.Add(TextBox19.Text) 'Очистка заполненных строк TextBox4.Clear() TextBox5.Clear() TextBox7.Clear() TextBox9.Clear() TextBox11.Clear() TextBox13.Clear() TextBox15.Clear() TextBox17.Clear() TextBox19.Clear() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Заполнение формы заказа ListBox1.Items.Add(Label1.Text) ListBox1.Items.Add(TextBox1.Text) ListBox1.Items.Add(Label2.Text) ListBox1.Items.Add(TextBox2.Text) ListBox1.Items.Add(Label3.Text) ListBox1.Items.Add(TextBox3.Text) End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click End Sub Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged End Sub Private Sub SaveFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles SaveFileDialog1.FileOk End Sub Private Sub GroupBox8_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox8.Enter End Sub End Class Спасибо. |
Отправлено: 17:57, 03-11-2008 | #298 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать paul_p, приветствую.
Цитата paul_p:
![]() Цитата paul_p:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim File As Integer = FreeFile() FileOpen(File, "MyFile.txt", OpenMode.Append) For i As Integer = 0 To ListBox1.Items.Count - 1 PrintLine(File, ListBox1.Items.Item(i)) Next i FileClose(File) End Sub А компоненты GroupBox1, GroupBox2, .., GroupBox7, TextBox, Label1, Label2, .., Label19, TextBox1, TextBox2, .., TextBox19 нужны именно в таком количестве? Между прочим код можно немного преобразовать с помощью операторов With и End With что уже было показано в теме На форуме код рекомендуется помещать между тегами [code]'здесь код[/code] ![]() |
||
Отправлено: 04:22, 04-11-2008 | #299 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Admiral! Большое спасибо!
По всей видимости, я не совсем корректно воспользовался сервисом поиска (учту на будущее) Тегом "code" тоже буду пользоваться обязательно, действительно удобно отделять код от текста. Что же касается большого количества TextBox, то это обусловлено самой формой. Дело в том, что тот кто будет заполнять форму должен видеть все поля сразу, т.к. приходится их заполнять одновременно. А выбирать пункт из меню менее удобно, чем заполнять видимый. Данная форма предназначена для многократного заполнения однотипной информации: №системного блока, серийный номер материнской платы и.т.д... Немного доработал код сохранения в файл. Вот что получилось: Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click SaveFileDialog1.Filter = "Текстовые файлы (*.txt)|*.txt" SaveFileDialog1.ShowDialog() If SaveFileDialog1.FileName <> "" Then FileOpen(1, SaveFileDialog1.FileName, OpenMode.Output) For i As Integer = 0 To ListBox1.Items.Count - 1 PrintLine(1, ListBox1.Items.Item(i)) 'копируем текст на диск Next i FileClose(1) End If End Sub |
Последний раз редактировалось paul_p, 04-11-2008 в 23:38. Причина: Добавление информации Отправлено: 11:20, 04-11-2008 | #300 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
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 |
|