|
Почетный модератор
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
|
|||||||
Готовые решения и полезные коды на Visual Basic .NET (Часть-1)18.08.2011, 22:44. Показов 581483. Ответов 250
Предлагаю в этой теме размещать ответы на часто задаваемые вопросы и просто делиться полезными кодами.
Обращаю внимание на некоторые моменты, которые являются дополнением к основным правилам
Просьба к постившим: не спешите постить решения "сгоряча", тщательно обдумайте список вопросов, их тематику и порядок Если вы найдете информацию, которой можно было бы дополнить ваши предыдущие сообщения, что-то изменить или перегруппировать, пишите в л/с.
Примечание: некоторые коды приведены без учета строгой типизации (Параметр Strict), поэтому для их использования необходимо выполнить приведение типов
55
|
|||||||
| 18.08.2011, 22:44 | |
|
Ответы с готовыми решениями:
250
Готовые решения и полезные коды на Visual Basic .NET (Часть-2)
|
|
|
||||||
| 20.02.2013, 05:25 | ||||||
|
Командная строка на форме Windows!
Кликните здесь для просмотра всего текста
17
|
||||||
|
1721 / 1208 / 228
Регистрация: 23.12.2010
Сообщений: 1,544
|
|||||||||||
| 04.03.2013, 21:34 | |||||||||||
|
Получение почты по протоколу POP3.
Создадим класс POP3.vb Кликните здесь для просмотра всего текста
Он у нас будет отвечать за получение списка писем с сервера и показ тела выбранного письма. Теперь форма, см. рисунок "Форма1" На ней: three TextBox controls named . Set the UserPassword control's PasswordChar field to the asterisk character (*). Add a ListBox control named MessageList and two Button controls named ActGet and ActView. Set the Button controls' Text properties to Get Messages and View Message, respectively. Add informational labels if desired 3 TextBox с именами ServerName, UserName и UserPassword. Установите свойство PasswordChar последнего равным *. Добавьте ListBox с именем MessageList и 2 кнопки с именами ActGet и ActView. Установите свойство Text у кнопок равным Get Messages и View Message соответственно. По желанию добавьте метки (label) с пояснениями. Полный код формы: Кликните здесь для просмотра всего текста
В итоге письма мы сможем увидеть в текстовом представлении. В том числе и вложения там будут в виде строки в кодировке Base64. В целом рекомендую почитать и поизучать формат файлов .mht - именно в нем тело письма представлено. Добраться в него можно через класс CDO. Но это уже отдельная история (сам разбираюсь понемногу...) Код не мой, но рабочий - проверено. Взят из книги: Visual Basic 2005 Cookbook (By John Clark Craig, Tim Patrick). Для страждущих - книга приложена в архиве
13
|
|||||||||||
|
27 / 27 / 4
Регистрация: 14.02.2012
Сообщений: 135
|
|||||||
| 09.03.2013, 08:10 | |||||||
2
|
|||||||
|
|
||||||
| 09.04.2013, 01:33 | ||||||
|
Восстанавливаем "потерянную" библиотеку или файл из приложения:
Предварительно этот файл нужно добавить в ресурсы приложения.
7
|
||||||
|
178 / 153 / 10
Регистрация: 08.11.2012
Сообщений: 224
|
|||||||||||
| 10.06.2013, 16:19 | |||||||||||
|
Кликните здесь для просмотра всего текста
Как использовать: Добавить в тело класса/событие/куда хотите вот этот код:
4
|
|||||||||||
|
32 / 32 / 0
Регистрация: 14.01.2013
Сообщений: 75
|
||||||
| 21.06.2013, 21:25 | ||||||
|
Функция для проверки прокси :
5
|
||||||
|
Форумчанин.NET
556 / 427 / 64
Регистрация: 12.02.2013
Сообщений: 834
|
|||||||||||
| 24.06.2013, 09:41 | |||||||||||
|
Альтернативная отправка писем на E-mail
Сверху проекта подключаем:
14
|
|||||||||||
|
178 / 153 / 10
Регистрация: 08.11.2012
Сообщений: 224
|
||||||||||||||||
| 24.06.2013, 21:08 | ||||||||||||||||
|
Загрузка DLL из ресурсов
Исходная статья для C# 1) Включаем "Показывать все файлы" в Обозревателе решений 2) Добавляем ссылку на библиотеку. Клик правой кнопкой мыши по "Ссылки" в обозревателе решений -> Добавить ссылку... -> Во вкладке "Обзор" выбрать вашу библиотеку -> ОК 3)Открываем список "Ссылки" -> Кликаем по пункту с названием нашей библиотеки -> В окне "Свойства" для параметра "Копировать локально" ставим False 4)Добавляем в ресурсы файл *.dll. В меню Проект > Свойства > Ресурсы > Добавить ресурс > выбираем снова нашу длл (либо сжатую длл архиватором)> Ok. Всё теперь появится в проекте папка Resources. Следите чтобы у ресурсов стояла опция "Копировать в выходной каталок" в положении "Не копировать". 5) Открываем список My Project -> открываем список MyApplication.myapp -> Двойной клик по Application.Designer.vb" 6) Находим класс "MyApplication" -> процедуру "New" заменяем на:
Для этого используйте следующую функцию
DLL_FILE_NAME - название файла в ресурсах Все, Теперь можно не таскать DLL за своей программой
22
|
||||||||||||||||
|
|
|||||||||||
| 28.06.2013, 14:05 | |||||||||||
|
Код довольно простой (на картинке для примера фон картинка, цвет фона красный)
7
|
|||||||||||
|
136 / 63 / 24
Регистрация: 08.11.2012
Сообщений: 250
|
|
| 09.07.2013, 23:33 | |
|
Жемчужина примеров кода VB.NET 10 в Visual Studio 2010.
1). Вставка фрагмента кода IntelliSense... Использование этих фрагмента кода даёт нам возможность чтобы, сэкономить время на изучение примеров, использование незнакомых возможностей и повторного использования ондного итого же кода. Ещё одно преимущество этой возможности добавлять свои фрагменты кода, это легко сделать в меню Сервис\Диспетчер фрагментов кода...(или же Ctrl+K,Ctrl+B). Вставка фрагмента кода в окне редактора кодов. Выберите нужную позицию курсора в окне редактора кода, затем контекст меню а там "Вставить фрагмент..." (или Ctrl+K,Ctrl+X). 2). Примеры приложений на Visual Basic.NET В этом сборнике рецептов представлены примеры Visual Basic.NET, поставляемые в составе пакета Visual Studio 2010. Это сборный пакет программ, демонстрирующий функции Visual Studio 2010. Сборник находится в VBSample.zip архив его нужно сначала разархивировать (после открываем файл ReadMe.html - здесь описаны все примеры и добавлена ссылка к ним), по умолчанию она находистся здесь: диск на которой VS2010 установлена: \Program Files\Microsoft Visual Studio 10.0\Samples\1049\ Разделы этого примера. Кликните здесь для просмотра всего текста
-Примеры приложений
-Примеры данных -Примеры языков -Примеры LINQ -Примеры настройки безопасности -Примеры компонентов серверов -Примеры планшетных ПК -Примеры WCF -Примеры Winform
5
|
|
|
|
||||||||||||||||
| 10.07.2013, 11:24 | ||||||||||||||||
|
В следующем примере хочу продемонстрировать как можно выполнять пинг определенного хоста с заданным интревалом в отдельном потоке без таймера и не зависая приложения. Изначально делал на C#, но решил переписать и на VB.NET.
Сначала о структуре приложения. 1) Класс PingNet - для реализации определения пинга 2) Класс GlobalCl - для хранения глобальных переменных 3) Класс Form1 - формочка с листвью и элементами для установки параметров. Начнем с класса PingNet Кликните здесь для просмотра всего текста
В принципе в коде все написано. В комментария каких-то дополнительных я думаю он не нуждается Класс GlobalCl Кликните здесь для просмотра всего текста
В нем есть статические переменные, которые инициализируются в статическом конструкторе, и больше нигде. Как видно это переменная потока. Конструктору передается адрес функции pn.Start, которая инициализирует метод обратного вызова для pn. Он то и выполняет бесконечную проверку в отдельном потоке, запуская метод класса checkPing. Класс формы. Кликните здесь для просмотра всего текста
В форме мы подписываемся на событие изменения состояния пинга и создаем его обработчик Hoock_change_Ping. В этом обработчике методом Invoke происходит реализация доступа к элементу из разных потоков. Метод принимает делегат, который говорит какой метод нужно вызывать и массив передаваемых параметров. Делегат pout инкапсулирует ссылку на метод printItem. В нем идет вывод очередной позиции с информацией в листвью и окрашивание строк в зависимости от состояний пинга. Состояния задаются в классе PingNet. Там можно отрегулировать на свой вкус или задать интерфейс для установки. Также подписывайтесь на событие изменения состояния пинга с других форм. Испольуйте нужным образом. P.S: Код писАл полностью сам. Разумеется версию упростил. Дорабатывайте на свое усмотрение. Проект прилагаю, скрины тоже.
16
|
||||||||||||||||
|
136 / 63 / 24
Регистрация: 08.11.2012
Сообщений: 250
|
||||||
| 14.07.2013, 00:25 | ||||||
|
Управление положением формы.
на примере мини гаджет а "Cyber Gadget" Кликните здесь для просмотра всего текста
5
|
||||||
|
77 / 38 / 2
Регистрация: 07.01.2012
Сообщений: 414
|
||||||
| 19.07.2013, 22:13 | ||||||
|
Подсветка синтаксиса как в редакторах.
Весь код для вставки:
5
|
||||||
|
|
||||||
| 03.10.2013, 23:19 | ||||||
|
Модернизация Готовые решения и полезные коды на Visual Basic .NET (Часть-1)
Отмечаем (выделяем) checkbox`s в TreeView при помощи области выделения при помощи Shift выделяем при помощи Ctr снимаем выделение в предыдущем посте у указанной реализации происходило выделение только в направлении сверху-вниз и слева-на право/ исправлено применений другого типа рамки
3
|
||||||
|
649 / 601 / 92
Регистрация: 19.03.2012
Сообщений: 1,128
|
|||||||||||
| 13.10.2013, 21:52 | |||||||||||
|
Получение URL всех вкладок Internet Explorer
На форме ListBox и Button. Добавляем ссылку на вкладке COM: Microsoft Internet Controls. Импортируем:
6
|
|||||||||||
|
|
||||||
| 09.11.2013, 18:38 | ||||||
|
Получение установленных приложений
Код программы: Кликните здесь для просмотра всего текста
5
|
||||||
|
|
||||||
| 09.11.2013, 20:53 | ||||||
|
Получение установленных приложений (2 вариант) [Рекомендуемо]
Кликните здесь для просмотра всего текста
9
|
||||||
|
|
|||||||||||
| 15.12.2013, 11:46 | |||||||||||
|
Один из вариантов защиты программы. При желании можно усложнить (к примеру, на вход кодировщика подавать не начальную сформированную строку, а немного ее модернизировав).
Код 1-тестовое приложение, код 2 - генератор файла ключа. Замечу, что данный метод имеет хорошие возможности для усложнения (к примеру, для объекта Rijndael его свойство Key - возможно шифрование с созданием второго файла). Для проверки работоспособности файл ключа необходимо поместить в папку с исполняемым файлом самой программы. Код тестового приложения:
13
|
|||||||||||
|
|
||||||
| 21.12.2013, 19:37 | ||||||
|
Несмотря на то что данный вопрос был освещен на 1-й странице данного FAQ, хотелось бы его дополнить.
Данный тестовый проект писался мной для лучшего понимания построения SQL запросов и запоминания основных моментов. На форме DataGridView1 и 7 кнопок. Надеюсь, кому-нибудь пригодится. ![]()
13
|
||||||
|
Заблокирован
|
||||||||||||||||
| 26.12.2013, 16:35 | ||||||||||||||||
|
3 украшения для формы
Украшение №1. Прозрачный фон из картинки PNG. Это очень простой способ создать окошко с попиксельно прозрачным фоном, и в то же время, с возможностью размещения любых стандартных контролов Winforms (при использовании известного решения с UpdateLayeredWindow, эта возможность утрачивается). Кликните здесь для просмотра всего текста
Украшение №2. Стеклянный фрейм Aero, расширенный в клиентскую область. Кликните здесь для просмотра всего текста
Украшение №3. Простейший скин в стиле Metro. (Автоматически применяется ко всем кнопкам на форме.) Кликните здесь для просмотра всего текста
Примечание. Если планируется рисовать свой скин для всех контролов, лучше отключить визуальные стили. Их размеры могут сильно различаться в зависимости от используемой темы, а это неполезно. Добавлено через 8 минут Забыл последние два кода под спойлер убрать. Хотелось бы, чтобы кто-нибудь отредактировал сообщение или дал такую возможность мне.
6
|
||||||||||||||||
| 26.12.2013, 16:35 | |
|
Помогаю со студенческими работами здесь
60
Basic4Android. Готовые решения полезные коды Полезные коды для PascalABC.NET Готовые коды для решения лабораторных работ Где бесплатно скачать учебник по Visual Basic 6 и Visual Basic .Net ?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|