Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Visual Basic: новости сайтов, советы, примеры кодов. Выпуск 246.


Информационный Канал Subscribe.Ru

Visual Basic: новости сайтов, советы, примеры кодов.
Выпуск 246.


VBNet VBMania
Ссылки:

  • Улицы VB
  • Использование VB
  • Азбука VB
  • Улицы VB
  • Кирпичики VB
  • CообЧа VB
  • VB по русски
  • MDesign
  • IgorykSoft
  • DanSoft
  • Господа!!! читайте MSDN!!!

    Несколько слов от автора:

       Новый выпуск!
    Читайте!


    Содержание выпуска




    Рекомендуем

    Бесплатная рассылка Subscribe.ru

    Электронный журнал
    Продвижение сайта: вопросы подписчиков, ответы экспертов

    Как получить доход при помощи Интернета? Решая эту проблему, Вы столкнетесь с десятками вопросов, ответ на которые может дать только опыт. Опыт экспертов "Продвижения" уникален, за плечами каждого из них десятки успешных проектов.

    Вы сможете задать любые вопросы экспертам, тем самым привлечь их знания для успешного продвижения Вашего бизнеса в сети Интернет.

    Подробности, прошлые выпуски и форма для подписки здесь:
    http://www.optimization.ru/mlist/promo.htm.



    Новости сайта VBNet

    Дата: 05.03.2004 11:52 | Раздел: Статьи по VB | Автор: Шатохина Н.А.

    Понимание XML - Узнайте, как Расширяемый язык разметки (Extensible Markup Language - XML) облегчает универсальный доступ к данным. XML — основанный на Unicode метаязык: язык для описания языков разметки. Он не привязан ни к одному языку программирования, операционной системе или поставщику программного обеспечения. XML обеспечивает доступ к огромному количеству технологий по манипулированию, структурированию, трансформированию и запрашиванию данных.

    Дата: 04.03.2004 09:59 | Раздел: Статьи по VB | Автор: Шатохина Н.А.

    Понимание WS-Security - D этой статье рассматривается, как использовать WS-Security для создания встроенной системы безопасности в самом SOAP сообщении, и затрагиваемые WS-Security вопросы: идентификация, цифровые подписи и шифрование.

    Дата: 03.03.2004 11:11 | Раздел: Статьи по VB | Автор: Шатохин Виктор

    Платформа 2004: Определяя будущее - Авторский взгляд на конференцию Платформа 2004.

    Дата: 02.03.2004 14:17 | Раздел: Примеры кода | Автор: Paul

    Простой ListBox - От автора:Попытка реализовать ListBox средствами VB. Контрол никак не претендует на завершённый готовый программный компонент, а лишь выступает как возможная основа для создания такого, хотя он вполне работоспособен. (исходник) Особенности: -в основе лежит колекция, поэтому индекс первого элемента 1, а не 0. -поддерживает множественное выделение (только Extended). -скорость добавления при Sorted = False и InstantlyRefresh = False практически не уступает стандартному элементу VB.

    Дата: 02.03.2004 12:21 | Раздел: Примеры кода | Автор: Анатолий Жуков

    ХудМеню - От автора:Для запуска: После раскрытия архива Menu.zip, запустить файл RegisterControls.bat. После регистрации запускайте проект ButtMenu.vbp и работайте: &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Замечания!!! В DesignTime можно создавать только трехмерное меню. (ограничения: 1 - не более 27 строк в меню, 2 - не более 27 меню на объекте, включая главное и все субменю. В DesignTime основные параметры в свойстве "Custom". Два интерфейса - английский и русский. Практически все параметры настраиваются как в DesignTime, так и в RunTime режимах для каждой строки меню (от подъема картинки с отбрасыванием тени и усилением цвета до высоты и ширины шрифта строки меню...). При работе с колорчеками на PropertyPages: - левая кнопка мыши пользовательские цвет; - правая кнопка - системные цвета. При выводе в RunTime методом TrackMenu (если не автомат флаги ниже). Флаги: Private Const TPM_CENTERALIGN = &H4& Private Const TPM_LEFTALIGN = &H0& Private Const TPM_RIGHTALIGN = &H8& В DesignTime создание подменю (Submenu) В ProperyPage текущего меню установите флажок Подменю(Submenu) в True. Перейти на следующую ProperyPage и добавить в Подменю строки меню и т. д. Значек раскрытия расширенного меню появляется в первом Меню если в нем присутствует хотя бы одна невидимая строка в меню. При щелчке на этой строке меню выводится расширенное меню включая невидимые строки. Во всех субменю данного меню все невидимые строки также становятся видимыми. Если строка невидима и содержит короткую клавишу, то она при нажатии данной комбинации клавиш посылает событие этого меню... Зона Label в каждом меню формируется только в том случае, если свойство Label меню содержит строку. Шрифт соответствует наименованию шрифта кнопки меню. Исключение MS Sans Serif преобразуется в Arial. Высота и ширина строки меню формируется автоматически в зависимости от ширины и высоты картинки, текста, картинки чека и картинки строки. Остальное (надеюсь) интуитивно понятно! Вопросы: aven@awax.ru Анатолий P.S. С регистрацией пока ни на одном компьютере не было проблем...

    Дата: 02.03.2004 12:18 | Раздел: Примеры кода | Автор: Половый Александр

    Поздравление - От автора:MS Agent поздравляет девчонок с 8 марта.

    Дата: 02.03.2004 12:12 | Раздел: Примеры кода | Автор: Andrey

    Editor - От автора:Простой пример, показывающий возможность сохранения параметров программы для удобства юзера, на примере текстового редактора. Параметры сохраняются в файле "c:\config.ini".

    Дата: 02.03.2004 11:09 | Раздел: Примеры кода | Автор: DismaL

    E-mail - От автора:Просто красивый анонимный почтовик :) Интерфейс в стиле XP (серебристый)
    От User Unknown: Простой почтовик (отправляльщик). Без поддержки вложений.

    Дата: 02.03.2004 11:07 | Раздел: Примеры кода | Автор: Ващенин Илья

    LoHoTrOn - От автора:Простой пример игрушки-однорукого бандита.

    Дата: 02.03.2004 11:01 | Раздел: Примеры кода | Автор: Андрюшов Алексей

    Unlimitrd Progress - От автора:Иногда невозможно определить процент выполнения действия. А вывести прогресс выполнения надо! Это пример демонстрирует простейший способ рисования прогресса на PictureBox при помощи стандартных средств VB с градиентной заливкой, которая зависит от времени выполнения. Лично мне не нравится зеленый цвет, поэтому я закомментировал эту строку.
    От User Unknown: Вылетает в конце заполнения:) А так.. очень симпатично.

    Дата: 02.03.2004 10:56 | Раздел: Примеры кода | Автор: empro

    CD convertor - От автора:Эта программа грабит Audio CD.В ней я использовал контрол DG Ripper - поместите его в папку System.

    Дата: 02.03.2004 10:48 | Раздел: Примеры кода | Автор: Comanche

    SHBrowseForFolder - От автора:Это доработка предыдущей версии, уже лежащей на сайте. К возможности задавать начальную папку обзора и список разрешённых файловых расширений добавлены: - задание пользовательского заголовка всего диалога, - возможность придать диалогу любой размер по желанию, - возможность центрировать диалог на экране, - возможность сделать диалог "always on top". Пример вызова для наглядной иллюстрации: Sub Main() Dim st As String st = fBrowseForFolder(hWnd_Owner:=0&, _ sPrompt:="Выберите папку, содержащую файлы *.bat и *.sys:", _ WhatBr:=BIF_RETURNONLYFSDIRS Or BIF_STATUSTEXT, _ DialogTitle:="Модифицированный диалог выбора папки", _ initDir:="C:\", _ fileMasks:="*.bat|*.sys", _ ChangeSize:=True, _ RatioX:=1.4, _ RatioY:=1.7, _ CenterOnScreen:=True, _ TopMost:=True) If Len(st) > 0 Then MsgBox "Вы выбрали папку:" + vbCr + st, vbInformation, "Информация" End Sub
    От User Unknown:Действительно хорошо переработанный и изменившийся в лучшую сторону диалог выбора папки.



    Последние 20 тем форума на VBNet.Ru:

    09:51 / 9 мар.  Кто знает как в VB.NET быстро отобразить таблиц... | Хитов: 2 |  Ответов: 0
    09:37 / 9 мар.  Смена иконки | Хитов: 1 |  Ответов: 0
    00:27 / 9 мар.  Это снова я!! | Хитов: 7 |  Ответов: 0
    00:26 / 9 мар.  Это снова я!! | Хитов: 6 |  Ответов: 0
    22:33 / 8 мар.  Определение нажатия | Хитов: 11 |  Ответов: 1
    19:32 / 8 мар.  Метод Хаффмена | Хитов: 28 |  Ответов: 4
    15:03 / 8 мар.  PHP: ereg(i)_ replace (пишу фильтр) | Хитов: 12 |  Ответов: 1
    13:33 / 8 мар.  End!!!!!!! | Хитов: 19 |  Ответов: 1
    05:58 / 8 мар.  Вечный вопрос | Хитов: 62 |  Ответов: 10
    03:17 / 8 мар.  MSDN | Хитов: 24 |  Ответов: 4
    01:13 / 8 мар.  FastHelpPlease | Хитов: 24 |  Ответов: 2
    00:51 / 8 мар.  WInamp | Хитов: 42 |  Ответов: 8
    00:06 / 8 мар.  Дерево каталогов | Хитов: 18 |  Ответов: 1
    23:47 / 7 мар.  Снова я!! Про MSFlexGird!!! | Хитов: 18 |  Ответов: 3
    23:45 / 7 мар.  MSFlexGird | Хитов: 14 |  Ответов: 1
    22:38 / 7 мар.  рисунок из Picture Box | Хитов: 19 |  Ответов: 1
    21:08 / 7 мар.  Общий проект типа The Bat | Хитов: 18 |  Ответов: 1
    19:44 / 7 мар.  два вопроса по тексту. | Хитов: 19 |  Ответов: 1
    19:05 / 7 мар.  Что с vbNet.ru | Хитов: 43 |  Ответов: 9
    18:39 / 7 мар.  ну хоть убейте | Хитов: 52 |  Ответов: 7


    Последние поступления в Библиотеку кодов:



    наверх


    Новости сайта MSDN



    наверх


    Новости сайта GotdotNet



    Новые статьи:



    наверх


    Новости сайта dotSite

    Новые статьи:



    Новые примеры:



    наверх


    Один момент из жизни форума: Как сменить иконку на форме во время выполнения программы?

    Адерес темы: http://vbnet.ru/forum/show.asp?id=37834

    Вопрос:
    Автор вопроса: Stik

       .NET
       Как сменить иконку на форме во время выполнения программы?


    Ответы:

    Автор: Павел
       Смотрите свойство Icon формы.
       Создать экземпляр класса Icon можно несколькими способами: он имеет 6 перегруженных конструкторов. В частности, можно создать Icon на основе данных из Stream'а, или загрузить из файла.



    наверх


    Вопрос/Ответ

    Здесь Вы можете задать вопрос, или ответить на уже имеющиеся вопросы.

    Вопросы:


    Автор вопроса: kas-cor

    Ответ ожидается по этому адресу

       Помогите разобраться, надо найти окно по имени и закрыть его.
    Делаю:

    DestroyWindow FindWindow(vbNull, "Калькулятор")
      
    Но почему-то не работает, в чем дело?


    Автор вопроса: Vir_rus

    Ответ ожидается по этому адресу

       Как в mmControl программно устанавливать запись с разных устройств (микрофон, модем и т.д.)?


    Автор вопроса: Tima

    Ответ ожидается по этому адресу

       Подскажите мне пожалуйста оператор для работы в сети! Вот мне, например, говорили есть оператор Winsock, а вот как им пользоваться я не знаю!


    Автор вопроса: @nton

    Ответ ожидается по этому адресу

       Как мне сделать так, чтобы точка (или shape) двигался по окружности?


    Автор вопроса: DIZEL

    Ответ ожидается по этому адресу

       Как считать/изменить содержимое ячейки памяти (адрес известен), которую использует другая программа?


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Как сделать так, чтобы таймер в порядке убывания отсчитывал какой-то промежуток времени, и всё это время куда-то выводил результат о том, сколько времени осталось?


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Как сделать так, чтобы при наведении на кнопку появлялось пояснение?


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Как случайным образом сгенерировать число?


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Если ввести переменную в раздел глобальных переменных на одной форме, будет ли одна видна другой?


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Тема - диалоги.
    У меня идёт диалог типа YesNo question, если нажать yes... Хотя лучше сами посмотрите, а то трудно выражаться...

    If response=vbyes then x=1

    И мне кроме этого надо, чтобы открылся ещё один yesNo question (другой вопрос).


    Автор вопроса: BaKs

    Ответ ожидается по этому адресу

       Как поставить пароль, например, на кнопку выход?




    Ответы:


    Вопрос:

       Скажите, как из ini-файла вывести каждую строку с параметрами в опредленный текстбокс? Например, так:

    ---file1.ini---
    [Main]
    autorun = True
    TimerOn = False
    ---End---

    и в Text1.text вытащить содержимое строчки 3, то есть Timeron.

    Ответ:

    Автор ответа: Andrei Bazhenov

    Создай отдельный модуль и загони в него эти две фукции:
      
    Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

    Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
      
    Public Function GetValue(File As String, Section As String, Key As String, Default As String) As String
         Static Temp As String * 256, Length As Integer
         Temp = Space$(256)
         Length = GetPrivateProfileString(Section, Key, Default, Temp, 255, File)
         GetValue = Left$(Temp, Length)
    End Function
      
    Public Sub SetValue(ByVal File As String, Section As String, Key As String, Value As String)
         Static N As Integer, Temp As String
         For N = 1 To Len(Value)
             If Mid$(Value, N, 1) = vbCr Or Mid$(Value, N, 1) = vbLf Then Mid$(Value, N) = " "
         Next N
         Temp = Value
         N = WritePrivateProfileString(Section, Key, Temp, File)
    End Sub
      
    Объясняю, как пользоваться.
    Функция GetValue вытаскивает из ini-файла значение, а метод SetValue наоборот записывает.
      
    Синтаксис:
      
    переменная = GetValue(ini-файл, раздел, ключ, стандартное_значение)
    SetValue(ini-файл, раздел, ключ, значение)
      
    Структура ini-файла:
    [раздел]
    ключ=значение
      
    В функции при указании раздела не нужно писать квадратные скобки "[...]".
      
    Если возникнут проблемы, пиши мне
    mailto:morion@ufacom.ru?subject=inifiles_help


    Вопрос:

       Задумал такую фишку. В форму встраивается объект "Лист Microsoft Excel". В ячейки его активного листа программно пишется что надо. Затем объект сохраняется в файле. И вот что получается. "Свойства" файла и быстрый просмотр показывают, что это вроде как полноценная электронная таблица с правильными данными. Но вот открыть её не получается: посте открытия... пусто (в смысле - книга не открывается).
    В чём дело?

    Ответ:

    Автор ответа: Sergey

    А как ты с Excel'ем работаешь: через OLE или его ObjectModel? У меня такое бывало, но точно отследить не получилось. Глючит в разные моменты. Исправлялось только удаление Excel как процесса.


    Вопрос:

       Вопрос по VB .NET. Есть примерно такой код:

    Private Sub b00_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles b00.Click, b01.Click, b02.Click
       'здесь идёт код
    End Sub

    Вопрос: как реализовать доступ к свойствам конкретного обьекта (b00, b01, b02) через sender?

    Ответ:

    Автор ответа: C...R...a...S...H

    Если не не изменяет памать (я надеюсь), то доступ к свойствам будет выглядеть так sender.text="XXX".
    Если VB пишет ошибку то необходимо проверить правильность типов.

    dim aa as system.windows.forms.button
    aa = ctype(sender, system.windows.forms.button)
    aa.text = "sadsadsdadas"



    Ответ:

    Автор ответа: Артем Кривокрисенко

    Ну все зависит от того, к к какому типу относятся эти контролы. В самом простом случае:

    Messagebox.Show ((Ctype(sender, Button).Text)

    То есть, нужно просто напросто воспользоваться функцией CType для приведения объекта к нужному типу. Правда, перед этим неплохо бы проверить, является ли этот объект именно кнопкой, конструкцией

    If TypeOf Sender is Button Then...



    Ответ:

    Автор ответа: Alex Mastuk

    Для того, чтобы реализовать доступ к свойствам конкретного обьекта (b00, b01, b02) через sender, нужно сделать следующее:
      
    Private Sub b00_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles b00.Click, b01.Click, b02.Click
        Dim Btn As Button
        Btn = sender
        ...
    End Sub



    Ответ:

    Автор ответа: Максим

    С помощью Ctype.

    Dim YourObj as YourType=CType(sender,YourType)


    Вопрос:

       База на Acces 2000. Доступ к базе на VB6 через DAO 3.6. 5 машин максимум одноврнменно работают.Всё нормально работает . Но через неопределённое время при попытки записи выдаёт сообщение: "Обновление невозможно. База открыта в
    монопольном доступе на такой-то машине". Закрыл программу на данной машине, открыл снова: всё нормально продолжает работать.
    В чём проблема?

    Ответ:

    Автор ответа: C...R...a...S...H

    Попробуй воспользоваться MS SQL Server, он позволяет работать с данными в многопользовательском режиме.


    Вопрос:

       Как сделать скроллинг обьекта picture мышью на vb6, как, например, в ACDSee?

    Ответ:

    Автор ответа: C...R...a...S...H

    На форму кидаешь Image с картинкой и пишешь:

    Public XX As Single
    Public YY As Single
    Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    XX = X
    YY = Y
    End Sub
    Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Image1.Left = Image1.Left + (X - XX)
    Image1.Top = Image1.Top - (YY - Y)
    End Sub


    Вопрос:

       Как можно програмно создать источник данных ODBC? Есть прога, которая работает с базой данных mdb через ADO, и при установке на новый комп нужно руками создавать источник данных прежде чем работать... Как бы это исправить?

    Ответ:

    Автор ответа: leo

    Nочно скаpать немогу, но знаю? что надо покапаться в реестре, примерно здесь:
    HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\



    Ответ:

    Автор ответа: Sergey

    А чего ADO не подходит? ODBC давно устарело. По сабжу: делал когда-то такое, просто записывал то, что мне нужно, в реестр. Если нужно, могу выслать код.



    Ответ:

    Автор ответа: Koren Oleg

    Очень просто!
    Когда создаёшь екзешник, то всовываешь туда свою БД и назначаешь ей App.Path. А в программе в ConnectionString пишешь App.Path & "\имя твоей БД" Ещё можно при инициализации программы поверить существование файла, если его нет, открываешь диалоговое окно для обозначения директории, в которой лежит БД.


    Вопрос:

       Как компилировать программы в VB.NET? Слышал, что нужно сояздавать многомеговый инсталятор с множеством библиотек чтобы программу можно было запустить на другом компе. Вопрос: Как создавать инсталятор и какие библиотеки нудно туда добавить (как)?

    P.S. Microsoft Visual Studio.NET 8 (2004) Enterprise Architect 8CD.

    Ответ:

    Автор ответа: Максим

    Просто для запуска нужен .Net Framework.
    Весит 24 мб. Он уже входит в win2003, для поздних версий нужно ставить отдельно. Если он уже установлен, то прогу можно запускать без инсталлятора (если не использует общих сборок). Компилировать в меню build. Для создания инсталлятора открой new projects - setup and deployment projects.


    Вопрос:

       Помогите сделать HyperLink.

    Ответ:

    Автор ответа: Sergey

    Зачем мучаться? Есть отличный набор компонент, такой как Infragistics Ultra Suite. С его помощью можно повысить функциональность на порядок.



    Ответ:

    Автор ответа: Максим

    Создать гиперссылку на форме?

    Private Declare Function ShellExecute Lib "shell32.dll" Alias
    "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal
    lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As
    String, ByVal nShowCmd As Long) As Long

    ShellExecute Me.hwnd, vbNullString, "http://www.yandex.ru",
    vbNullString, "C:\", 1

    Попробуй это.




    Можете заполнить эту форму, либо отослать вопрос СЮДА

    Форма для добавления нового вопроса в этот раздел. Информация отсылается по E-mail владельцу сайта.
    Текст сообщения:
    Ваше имя
    E-mail для ответа

    наверх


    Выпуск подготовили:

    Сурменок Павел




    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться
    Убрать рекламу

    В избранное