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

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


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

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


VBNet VBMania
Ссылки:

  • GotDotNet
  • Улицы VB
  • Азбука VB
  • VB по русски
  • MDesign
  • DanSoft
  • Хрестоматия VB
  • VBCoder
  • Господа!!! читайте MSDN!!!

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

       На днях устанавливал SP2 для XP... Хотя на устранение возникших конфилктов между ОС и моей финтебуберной 8-кнопочной оптической мышой A4Tech ушли сутки (вопрос решился только после ответа службы поддержки, рассказавшей, что после деинсталляции драйвера мыши он все же остается в системе и его надо удалять руками :) ), но я рад, что я убил на это дело сутки: система стала работать чуть ли не в 2 раза быстрее!
    Читайте!


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




    Как загрузить в ListView текст из файла?

    Вопрос:

    Как загрузить в ListView текст из файла?

    Ответ:

    При условии, что файл текстовый, то есть нормально прослеживается EOF, сделай так:

    Dim Str As String
    Open "C:\autoexec.bat" For Input As 1 'вместо autoexec.bat указывается свой файл
    Do Until EOF(1)
    Input #1, Str
    ListView1.ListItems.Add , , Str
    Loop

    Чтобы было красивее, можно вставить ListView1.View=2. Тогда все данные будут выводиться как список.

    Игорь

    наверх


    Как сделать чтобы форма была всегда поверх всех окон?

    Вопрос:

    Как сделать чтобы форма была всегда поверх всех окон?

    Ответ:

    Делается это очень просто.
    Это в модуль:

    Public Declare Function SetWindowPos Lib "user32" _
    (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
     ByVal X As Long, ByVal Y As Long, ByVal cx As Long, _
     ByVal cy As Long, ByVal wFlags As Long) As Long
     Public Const HWND_NOTOPMOST = -2
     Public Const HWND_TOPMOST = -1
     Public Const SWP_NOACTIVATE = &H10
     Public Const SWP_NOMOVE = &H2
     Public Const SWP_NOSIZE = &H1

    Public Sub SetFormPosition(frmHandl As Long, TopPosition As Boolean)
    If TopPosition Then
    SetWindowPos frmHandl, HWND_TOPMOST, 0, 0, 0, 0, _
    SWP_NOACTIVATE Or SWP_NOSIZE Or SWP_NOMOVE
    Else
    SetWindowPos frmHandl, HWND_NOTOPMOST, 0, 0, 0, 0, _
    SWP_NOSIZE Or SWP_NOMOVE
    End If
    End Sub

    Это в любом месте формы:

    call SetFormPosition(Me.hwnd, True)

    Комментарий:
    Это работает точно под WINDOWS 98 и под WINDOWS 98 SE, под другие ОС не пробовалось, проблемы есть точно в WIN XP.

    b17

    наверх


    Как с помощью API вызвать диалоговое окно выбора цвета?

    Вопрос:

    Как с помощью API вызвать диалоговое окно выбора цвета и сохранить новые значения?

    Ответ:

    Private Type ChooseColor
       lStructSize As Long
       hwndOwner As Long
       hInstance As Long
       rgbResult As Long
       lpCustColors As String
       flags As Long
       lCustData As Long
       lpfnHook As Long
       lpTemplateName As String
    End Type

    Private Declare Function ChooseColor Lib "comdlg32.dll" Alias "ChooseColorA" (pChoosecolor As CHOOSECOLOR) As Long
    Private Sub Command1_Click()
        Dim cc As ChooseColor
        Dim ret as long

        cc.lStructSize = Len(cc)
        'При указании хендела доступ к форме временно блокируется, до закрытия вызванного диалога(выбор цвета).
        cc.hwndOwner = Form1.hWnd 'Хендел вызывающей формы.
        cc.hInstance = App.hInstance
        cc.flags = 0 'Состояния вызываемого окна. 0-default state. (0-14) шагом = 2
        cc.lpCustColors = String$(16 * 4, 0)
        
        ret = ChooseColor(cc) 'Вызываем диалог

        If (ret) Then 'Если была нажата кнопка ОК
           BackColor = cc.rgbResult 'Меняем цвет фона формы на выбранный нами цвет
        Else
           MsgBox "Действие отменено"
        End If
    End Sub

    SC

    наверх


    Как на VB установить шрифты в систему?

    Вопрос:

    Как на VB установить шрифты в систему? Пробовал использовать API функцию AddFontResource. Она устанавливает выбранный шрифт в систему, только после перезагрузки шрифт удаляется из системы.

    Ответ:

    Бывает необходимо добавить в систему шрифт. Для его использования не достаточно просто скопировать файл шрифта в C:\WINDOWS\Fonts.

    Необходимо инсталлировать, это выполняет функция API AddFontResource, которая объявляется так:

    Declare Function AddFontResource& Lib "gdi32" Alias "AddFontResourceA" (ByVal lpFileName As String)

    Использование:

    1.Можно файлы шрифтов включить в дистрибутив с помощью встроенных возможностей Package & Deployment Wizard .
    В форме:
    2.Потом с, помощью MyFile = Dir("C:\WINDOWS\Fonts\Helvenlt.ttf"), проверяем из своей программы, наличие файла в системе:

    If MyFile = "Helvenlt.ttf" Then
    Exit Sub
    Else 'если его нет, то копируем и устанавливаем шрифт.
    'Копируем шрифт в систему
    FileCopy App.Path & "\Helveblt.TTF", "C:\WINDOWS\Fonts\Helvenlt.ttf" 'Необходимо скопировать шрифт в систему
    'Устанавливаем шрифт
    Call AddFontResource("Helvenlt.ttf") 'Команда устанавливает шрифты в систему
    End If
    Текст1.FontName = "HelveticaLT" 'Используем шрифт

    slavik

    наверх


    Как получить адрес папки для временных файлов в W2k Server?

    Вопрос:

    Есть переменная WindowsDirectory и я всегда ее использовал для временных файлов, так стабильнее чем Temp но вдруг мне пришло письмо что моя программа не работет в W2k Server так как он не распознает эту переменную и пишет файл куда хочет, а когда его нужно прочитать то читает тоже откуда хочет и эти папки не сходятся. Отсюда информация не теряется, а просто пишется в одно месте, а читается из другого места - т.е. файла нулевого!
    Стандартные переменные $System_Root$ VB не понимает!

    P.S. В W2K Proffesional все работает!

    Ответ:

    Попробуй воспользоваться API функцией GetTempPath.

    Private Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long

    Помести куда нужно:

    Dim szTempPath As String * 100
    GetTempPath 100, szTempPath

    Всё. Теперь переменная будет содержать путь Темп директории 8)

    SC



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

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

    Вопросы:


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

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

       Как программно провести громкостный анализ определенного канала midi? Например, проигрывается музыка и надо провести анализ каждого канала и вывести на манер винампа. Подойдет все: компонент, АПИ или Проект! Желательно с объяснением! Примечание: сама программа не проигрывает миди!


    Автор вопроса: Алексей

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

       Как, при открытии (или закрытии) каждой книги EXCEL автоматом с помощью VBA выполнить определенные действия, например вывести ее имя в log.txt?


    Автор вопроса: x-pert

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

       Как заставить VS .Net встать под WinXP? Проблема в том, что почти в самом конце установки выскакивает сообщение, что произошла ошибка (невозможно копировать такой-то файл), и установка прерывается. Система WinXP SP1 eng. На другой машине с Win2k SP4 rus ставиться без вопросов. Может кто знает, в чем проблема?


    Автор вопроса: Макс

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

       Как в VB6 определить, на какой элемент (точнее его имя) наведен курсор мыши? Обрабатывать у каждого событие MouseMove не подходит, слишком много элементов на форме (свыше 60). Индексирование тоже не подходит.


    Автор вопроса: Макс

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

       У меня в проекте используется совместно TreeView и ListView. Как организовать сохранение/открытие их содержимого в БД или в файлах с двоичным доступом к ним? Если можно кусок кода. (VB .Net)


    Автор вопроса: Макс

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

       Допустим, имеется следующая строка:
    215@243а@в21ав@mailto:name@domen.com”543253@4@3@54”>name2@domen.com!21!”
    Как из нее выдрать email’ы? При этом нужно учесть имена, домены и Интернет зоны в email’ах могут быть разными. Email’ы в строках могут быть отделены от текста (например пробелами), так сливаться с текстом. (VB .Net)


    Автор вопроса: Макс

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

          Может, кто где видел контрол “линейка” для RichTextBox как в WordPad или Word? Киньте ссылку… (VB .Net)


    Автор вопроса: Андрей

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

       Подскажите пожалуйста, есть картинка в формате JPEG 128x128, нужно сузить ее до 128х96 и сохранить. Пробовал при помощи Picture.image, но картинка снизу обреяается. Если есть у кого исходники, или любая консультация буду очень признателен.


    Автор вопроса: Николай

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

       Как добвить запись в связанные таблицы реляционной базы данных? Связь между таблицами многие к одному. Хотелось бы пример на VB5.


    Автор вопроса: Пономаренко Дениис

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

       Как можно в TextBox перевести курсор на новую строчку при нажатии кнопки (или при обращении к функции), подобно кнопке Enter?


    Автор вопроса: Дмитрий

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

       Как с помощью функций API для Visual Basic настроить систему Windows XP и модем на выход из спящего состояния по сигналу модема?




    Ответы:


    Вопрос:

       Надо сделать тест, в котором вариантами ответа являются картинки. Тест должен храниться в файле.

    1) Как в 1 файл засунуть картинки и текст? Как с таким файлом можно работать?

    2) В какой контрол можно засунуть картинки и текст одновременно?

    Ответ:

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

    Тебя спасет RichTextBox! В нем можно хранить картинки, текст и т.д. И сохранять файл с внедренными картинками!


    Вопрос:

       Как узнать общий объём оперативной памяти компьютера, свободной и занятой?

    Ответ:

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

    Купи книгу Джефри Рихтера "Windows для профессионалов" - там все, что тебе надо и намного больше...




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

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

    наверх


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

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

    http://subscribe.ru/
    http://subscribe.ru/feedback/
    Подписан адрес:
    Код этой рассылки: comp.soft.prog.vbnewsadvices
    Отписаться

    В избранное