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


VBNet VBMania
Голосование:

Ваш голос отсылается по E-mail владельцу сайта, после чего голоса анализируются и на отдельной странице выводятся результаты.

Нет тем.

Рассылки Subscribe.Ru
Мир программирования на Visual BASIC 5.0 и HTML.
Новости сайта IgorykSoft и советы по программированию
Visual Basic.NET Уроки.

Доска почёта:

Sergey Y. Tkachev
Кононенко Роман
Kirill

Ссылки:

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

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

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


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




    Книги

    Переход на VB .NET. Стратегии, концепции, код (цена ~ 158 руб.)

    Эта книга была задумана как одна из первых книг о .NET, которая ознакомит читателя с основными идеями новой архитектуры и подготовит его к знакомству с более детальной литературой, например документацией Microsoft и ее толкованиями, которая неизбежно появится на рынке. Она поможет вам взглянуть на эту технологию с позиций ваших собственных рабочих планов и быстро освоить те концепции, которые покажутся необычными для большинства прогр...

    Автор(ы): Дан Эпплман, Издательство: Питер, 2002 г.


    Программирование на VB.NET. Учебный курс (цена ~ 119 руб.)

    Эта книга является вводным курсом по изучению языка программирования Visual Basic .NET. Даны основные принципы объектно-ориентированного программирования в контексте языка VB .NET, поскольку без хорошей подготовки в этой области невозможно в полной мере пользоваться всеми преимуществами VB .NET.
    Изложены азы всех аспектов языка, которыми должен владеть любой профессиональный разработчик VB .NET

    Автор(ы): Г. Корнелл, Дж. Моррисон, Издательство: Питер, 2002 г.


    VB.NET для разработчиков (цена ~ 125 руб.)

    Основная задача книги - быстро ознакомить разработчиков Visual Basic с изменениями в .NET Framework. Программисты, использующие Java, C++, Delphi или другие инструменты разработки приложений и интересующиеся Visual Basic или технологией .NET Framework, также найдут эту книгу полезной. Хотя книга посвящена Visual Basic.NET, ее основная цель - продемонстрировать взаимодействие Visual Basic и ...

    Автор(ы): Кит Франклин, Издательство: Вильямс, 2002 г.




    Остальные книги о VB можно найти
    здесь.

    наверх


    MS Agent CD

    Уникальный компакт диск от Шатрыкина Ивана (VBNet.Ru)! На диске вы сможете найти все для работы с Microsoft Agent!

    • Ядро Agent для установки на ваш компьютер, если его там еще нет - вы можете его распространять с вашими программами.
    • Полный справочник по Agent от Microsoft - используйте технологию Agent на полную мощь.
    • Справочник по Agent на русском языке от Анатолия Климова - уникальный справочник.
    • Статьи по технологии Agent! - научитесь работе с компонентом Agent с самых азов.
    • Русский модуль речевого синтеза! - Ваша программа заговорит по-русски!
    • Коллекция примеров по работе с Agent - несколько примеров от Microsoft и от сайта VBNet.Ru.
    • Редактор персонажей от Microsoft - создайте свои уникальный персонаж!
    • Уникальная коллекция персонажей! - десятки бесплатных персонажей для ваших программ, выберите персонажа по вкусу!.
    • Другие примочки к Agent-у в подарок!

    Все компоненты, представленные на диске, не имеют лицензионных ограничений и свободны от авторских отчислений. Покупайте диск - вы не пожалеете!


    Стоимость: 95 рублей
    Фамилия:
    Имя:
    Отчество:
    E-mail:
    Почтовый индекс:
    Область (край):
    Город:
    Улица, дом, квартира:


    наверх


    Спрятать программу из Панели Задач

    Данный пример покажет, как можно спрятать вашу программу из панели задач, а затем показать. Обратите внимание на функцию SetWindowPos - во время показа формы вы можете установить место появления формы, а также новые размеры формы.

    Разместите на форме 3 элемента CommandButton и элемент Timer. При нажатии на Command1 программа прячется как из панели задач, так и из видимых программ. Событие Timer1_Timer через 5 секунд покажет вашу програаму. При нажатии на Command2 программа удаляется из панели задач, но остается видимой, нажатие на Command3 покажет вашу программу в панели задач. Одна странность: при нажатии второй раз на Command2 программа будет показана на панели задач.

    Const WS_EX_APPWINDOW = &H40000
    Const GWL_STYLE = (-16)
    Const GWL_EXSTYLE = (-20)
    Const SW_HIDE = 0
    Const SW_NORMAL = 1
    Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
    Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
    Private 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
    Const SWP_SHOWWINDOW = &H40
    Const SWP_HIDEWINDOW = &H80
    Dim ret&

    Private Sub Command1_Click() 'Этот код спрячет вашу программу из панели задач, также спрячет саму форму
    ret = SetWindowPos(Form1.hwnd, 0, Form1.Left, Form1.Top, Form1.Width, Form1.Height, SWP_HIDEWINDOW)
    Timer1.Enabled = True
    End Sub

    Private Sub Form_Load()
    Timer1.Interval = 5000
    End Sub

    Private Sub Timer1_Timer() 'Этот код покажет вашу форму через 5 секунд
    ret = SetWindowPos(Form1.hwnd, 0, 0, 0, 500, 500, SWP_SHOWWINDOW)
    End Sub

    Private Sub Command2_Click() 'событие спрячет вашу прогу из панели задач. Программа остается видимой
    ShowWindow Form1.hwnd, SW_HIDE
    ret = GetWindowLong(Form1.hwnd, GWL_EXSTYLE)
    SetWindowLong Form1.hwnd, GWL_EXSTYLE, ret Xor WS_EX_APPWINDOW
    ShowWindow Form1.hwnd, SW_NORMAL
    Timer1.Enabled = False
    End Sub

    Private Sub Command3_Click() 'событие покажет программу в панели задач
    ShowWindow Form1.hwnd, SW_HIDE
    ret = GetWindowLong(Form1.hwnd, GWL_EXSTYLE)
    SetWindowLong Form1.hwnd, GWL_EXSTYLE, ret Or WS_EX_APPWINDOW
    ShowWindow Form1.hwnd, SW_NORMAL
    Timer1.Enabled = False
    End Sub

    наверх


    Проверка новых версий программы через Интернет

    Данный пример покажет, как ваша программа может проверять через Интернет, появилась ли новая версия. Естественно, должно быть активное соединение с Инетом.

    Прежде всего вам нужен, к примеру, текстовой файл в Инете, в котором лежит необходимая информация о версии файла (в данном примере всего лишь дата последнего изменения программы - 2001_07_15). Также вам необходимо расположить на форме элемент Inet1 (меню Project|Components - Microsoft Internet Transfer Control 6.0) а также элемент CommandButton

    Private Sub Command1_Click()
    a$ = Inet1.OpenURL("http://sharig.webzone.ru/version.txt", icString)
    'поскольку мы точно знаем, сколько символов в новой дате, то...
    a$ = Mid(a$, 1, 10)
    If a$ = "" Then
    MsgBox "Сервер недоступен, попробуйте загрузить попозже.", vbOKOnly, "Обновление программы"
    Exit Sub
    End If
    'вы можете предусмотреть (самостоятельно) с чем сравнивать новую дату (a$) с предыдущей ("2001-12-14")
    If a$ <> "2001-12-14" Then
    y$ = "На сервере появилась новая версия программы. Хотите загрузить?"
    b$ = MsgBox(y$, vbYesNo, "Обновление программы")
    'запуск броузера к странице загрузки программы
    If b$ = 6 Then Shell ("C:\Program Files\Internet Explorer\IExplore -nohome" + "http://sharig.webzone.ru/IndexAbout.htm"), vbMaximizedFocus
    Else
    MsgBox "На сервере старая версия"
    End If
    End Sub

    наверх


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

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

    ВАРИАНТ 1. Если вам нужно переждать несколько СЕКУНД

    Function Delay(Pause As Single)
    Dim Start As Single
    Start = Timer
    Do While Timer < Start + Pause
    DoEvents
    Loop
    End Function

    ВАРИАНТ 2. Если вам нужно переждать несколько МИНУТ

    Public Sub Sleeping(NumberOfMinute As Double)
    Dim FinishTime As Date
    FinishTime = DateAdd("n", NumberOfMinute, Now)
    Do Until FinishTime <= Now
    DoEvents
    Loop
    End Sub

    ПРОВЕРКА ВЫПОЛНЕНИЯ КОДА ВАРИАНТА 1 ИЛИ 2

    Private Sub Form_Paint()
    Print Time
    'выберите, какой вариант вам больше по душе
    Delay (5) 'или Sleeping (5)
    'и в том, и в другом случае указывается время в секундах
    Print Time
    End Sub

    ВАРИАНТ 3. Если вам нужно переждать несколько СЕКУНД...

    Private Declare Sub sapiSleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
    Private Sub Form_Paint()
    Print Time()
    Call sapiSleep(1000) 'в миллисекундах
    Print "Прежде чем напечататься, прошло 1000 миллисекунд"
    Print Time()
    End Sub

    наверх


    Запустить приложение, ассоциированное с расширением файла

    'ВАРИАНТ1

    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
    Private Declare Function GetDesktopWindow Lib "user32" () As Long

    Function startdoc(DocName As String)
    Dim Scr_hDC As Long
    Scr_hDC = GetDesktopWindow()
    startdoc = ShellExecute(Scr_hDC, "Open", DocName, "", "C:\", 1)
    End Function

    Private Sub Command1_Click()
    Dim r As Long
    'укажите путь к вашему файлу
    r = startdoc("D:\garbage\garik.xls")
    End Sub

    'ВАРИАНТ2

    Предположим, у вас есть файл в формате htm. Вам необходимо открыть его в программе по умолчанию (у большинства это ИнтернетЭксплорер). Данный код запустит Эксплорер и откроет в своем окне указанный вами htm-файл.

    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
    Const SW_SHOWMAXIMIZED = 3

    'использование
    ShellExecute 0, "open", "D:\Basic\htm\api01.htm", "", "", SW_SHOWMAXIMIZED
    'или
    'ShellExecute 0, "open", "api01.htm", "", "", SW_SHOWMAXIMIZED

    наверх


    Подсчитать количество копий запущенной программы

    Данный пример покажет, как можно подсчитать количество запущенных окон броузера Microsoft Internet Explorer. Только одна проблема: при вторичном исполнении кода происходит суммирование с предыдущими результатами подсчета. Если найдется желающий докопаться до ошибки,
    пришлите мне исправленный вариант.

    Расположите на форме элемент CommandButton, а также добавьте дополнительный отдельный модуль.

    'КОД ФОРМЫ

    Private Sub Command1_Click()
    Dim iIEInstances As Integer
    iIEInstances = AppInstances("Microsoft Internet Explorer")
    MsgBox iIEInstances
    End Sub

    'КОД МОДУЛЯ


    Option Compare Text
    Private Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
    Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
    Private pbExact As Boolean
    Private psAppString As String
    Private piAppCount As Integer
    Public Function AppInstances(AppNamePart As String, Optional ExactMatchOnly As Boolean) As Integer
    'параметры:
    'AppNamePart = любая часть заголовка или приложения
    'пример использования
    'dim iIEInstances as integer
    'iIEInstances = AppInstances("Microsoft Internet Explorer")
    Dim lRet As Long
    psAppString = AppNamePart
    pbExact = ExactMatchOnly
    lRet = EnumWindows(AddressOf CheckForInstance, 0)
    AppInstances = piAppCount
    End Function
    Private Function CheckForInstance(ByVal lhWnd As Long, ByVal lParam As Long) As Long
    Dim sTitle As String
    Dim lRet As Long
    Dim iNew As Integer
    sTitle = Space(255)
    lRet = GetWindowText(lhWnd, sTitle, 255)
    sTitle = StripNull(sTitle)
    If sTitle <> "" Then
    If pbExact Then
    If sTitle = psAppString Then piAppCount = piAppCount + 1
    Else
    If InStr(sTitle, psAppString) > 0 Then piAppCount = piAppCount + 1
    End If
    End If
    CheckForInstance = True
    End Function
    Private Function StripNull(ByVal InString As String) As String
    Dim iNull As Integer
    If Len(InString) > 0 Then
    iNull = InStr(InString, vbNullChar)
    Select Case iNull
    Case 0
    StripNull = InString
    Case 1
    StripNull = ""
    Case Else
    StripNull = Left$(InString, iNull - 1)
    End Select
    End If
    End Function

    наверх


    Связать расширение файла с приложением

    Данный пример покажет, как можно связать файлы с расширением .BAR с вашим приложением. В моем случае - это приложение для редактирования текстовых файлов.

    Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
    Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
    ' Return codes from Registration functions.
    Const ERROR_SUCCESS = 0&
    Const ERROR_BADDB = 1&
    Const ERROR_BADKEY = 2&
    Const ERROR_CANTOPEN = 3&
    Const ERROR_CANTREAD = 4&
    Const ERROR_CANTWRITE = 5&
    Const ERROR_OUTOFMEMORY = 6&
    Const ERROR_INVALID_PARAMETER = 7&
    Const ERROR_ACCESS_DENIED = 8&
    Private Const HKEY_CLASSES_ROOT = &H80000000
    Private Const MAX_PATH = 260&
    Private Const REG_SZ = 1

    Private Sub Command1_Click()
    Dim sKeyName As String
    Dim sKeyValue As String
    Dim ret&
    Dim lphKey&

    'Создание ключа "MyApp".
    sKeyName = "MyApp"
    sKeyValue = "My Application"
    ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&)
    ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&)
    'Создание ключа, связанного с "MyApp".
    sKeyName = ".BAR"
    sKeyValue = "MyApp"
    ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&)
    ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&)
    'Коммандная линия для приложения"MyApp".
    sKeyName = "MyApp"
    sKeyValue = "D:\Basic\MyProjects\SharPad\SharPad.exe %1"
    ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&)
    ret& = RegSetValue&(lphKey&, "shell\open\command", REG_SZ, sKeyValue, MAX_PATH)

    End Sub

    наверх


    Мои программы

    BalloonMessage for MS Agent

       BalloonMessage for Microsoft Agent реализует диалог программы с пользователем, используя при этом технологию Microsoft Agent. OCX реализует три типа диалоговых окон: InputBox, MsgBox и MsgLabels.

    Автор: Шатрыкин Иван. Соавтор: Павел Сурменок.

    наверх


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

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

    Вопросы:


    Автор вопроса:
    ]CBK[CRaSH

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

       Люди занимаюшиеся ОпенГЛ ям на ВБ напишите мне письмо я создал проект 3D редактора и 3D gamesА. Хочу посоветоваться и т.д.


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

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

       Как скопировать файл из и-нета ,просто указав проге путь к этому файлу.


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

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

       Срочно нужен пример кода на vb6 анимации палитры.


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

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

       Необходимо сделать проярачные окна именно в ВИН98. По ссылке лежит пример
    http://www.sources.ru/vb/skinnable_desktop_taskbar.zip.
    Там испольяуется посторонняя библиотека.Я немогу подключить е? к своему проекту - ошибка - немогу найти файл.


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

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

       Я ссылаюсь в программе на апи левой библиотеки(т.е. не системной), при этом в ходе выполнения программы мне сообщается что эта библиотека не найдена, хотя она лежит в папке с проектом. Чужая программа испольяует эту библиотеку бея всяких проблем.


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

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

       Помогите пожалуйста у меня никак не получаеться создать ярлык програмно.




    Ответы:


    Вопрос:

       Подскажите, как повернуть Image на определённое количество градусов.
    Например это стрелка от часов,и её нужно поворачивать каждую минуту на 6 градусов.

    Ответ:

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

    На vbstreets.da.ru есть такая статья в разделе "статьи на русском" .


    Вопрос:

       Не подскажет ли кто-нибудь мне как создавать/запускать ярлычки в виндоусе ну или местоположение некого OCX который умеет все это делать.

    Ответ:

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

    Создание ярлыка
      
    Private Declare Function OSfCreateShellLink Lib "vb6stkit.dll" Alias "fCreateShellLink" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArguments As String, ByVal fPrivate As Long, ByVal sParent As String) As Long
      
    Private Sub Form_Load()
    OSfCreateShellLink "C:\Win\Рабочий стол" & vbNullChar, "Блокнот", "C:\Win\Notepad.exe", "", True, ""
      
    End Sub


    Вопрос:

       Срочно нужна функция для создание линии. обыкновенно простой такой линии

    Ответ:

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

    object.Line (x1, y1) - (x2, y2), [color]


    Вопрос:

       Срочно нужна функция для создание линии. обыкновенно простой такой линии

    Ответ:

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

    Form.Line (x0,y0)-(x1,y1),color
    x0,y0 - начальная точка
    x1,y1 - конечная точка
    координаты задаются в единицах указанных в свойстве ScaleMode
    color - цвет; можно задавать как в HEX форме так и через ф-цию QBCOLOR


    Вопрос:

       Срочно нужна функция для создание линии. обыкновенно простой такой линии

    Ответ:

    Автор ответа: Kurt Haeldar

    В Visual Basic есть функция Line (x1, y1) - (x2, y2), color, [B | BF]
    Параметры:

    x1,y1 - начало линии
    x2,y2 - конец линии
    color - цвет
    [B | BF] - модификаторы, первый говорит о том, что нужно рисовать не линию, а прямоугольник, второй еще и закрасит этот прямоугольник. Это необязательные элементы. Эта функция может рисовать как прямо на форме, так и на элементе PictureBox.

    Другой способ - API функции. Например, LineTo.


    Вопрос:

       Срочно нужна функция для создание линии. обыкновенно простой такой линии

    Ответ:

    Автор ответа: Мунгалов Андрей

    Если нужно рисовать линию на форме, то вот так:

    Me.Line(Координата Х1,Координата Y1)-(Х2,Y2), цвет линии (можно так RGB(255, 255, 255))

    Координаты подставляются в "Твипах" As Single
    Цвет As Long


    Вопрос:

       Люди срочно нужен VB5 подскажите где скачать можно.

    Ответ:

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

    на базаре примерно за 50-80р. :-)
    VB - это коммерческий продукт. Кстати, на базаре скорей всего найдешь VB6/7, но не 5.


    Вопрос:

       Кто знает как пользоваться файлами (.RES) содержащие ресурсы, больше интересуют диалоговые окна.

    Ответ:

    Автор ответа: P@Ssword

    Delphi насмотрелся? Это тебе не Builder, VB так не умеет :(


    Вопрос:

       Файл класса MyClass
    --------------------
    Private sMyName as string
    Public Propery Get MyName() as string
         myName=sMyName
    End Property

    В выполняемой программе
    ---------------------
    Dim objMyClass as MyClass
    set objMyClass = New MyClass
    Debug.Print objMyClass.Name

    должно выводить сообщение:
    objMyClass

    Что и где писать

    Ответ:

    Автор ответа: Зубарь Сергей

    VB не будет сам выводить имя переменной, определенный как класс.
    Можно только создать свойство Name у интересующего класса и потом считать его значение. Причем само значение необходимо сначала определить, например в процедуре инициализации экземпляра класса

    Private sMyName as string

    Private Sub Class_Initialize()
    sMyName = "objMyClass"
    End Sub

    Public Property Get Name() as string
          Name=sMyName
    End Property

    В выполняемой программе
    ---------------------
    Dim objMyClass as MyClass
    set objMyClass = New MyClass
    Debug.Print objMyClass.Name

    будет выведено сообщение:

    objMyClass

    (Правда смысла во всей этой конструкции абсолютно никакого :-\)


    Вопрос:

       Кто янает, как сделать, чтобы программа обладала повышенным приоритетом в диспетчере яадач Windows 2000? То есть, чтобы ее нельяя было оттуда удалить.

    Ответ:

    Автор ответа: P@Ssword

    Повышенный приоритет не поможет - надо, вроде, запускаться как сервис.


    Вопрос:

       Кто янает, как сделать, чтобы программа обладала повышенным приоритетом в диспетчере яадач Windows 2000? То есть, чтобы ее нельяя было оттуда удалить.

    Ответ:

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

    Могу достать вот такие:

    InstallShield Express v3.53
    InstallShield Express v3.0
    InstallShield Express v2.11
    ...

    еще и такие:

    InstallShield Developer v7.02
    InstallShield Professional v6.30
    InstallShield 2000 v6.10
    ...

    Да еще и куча всего... за 1 WMZ


    Вопрос:

       Как можно черея VB определять и яадавать имя компьютера и его IP-адрес Можно ли в VB и VBA испольяовать API SetComputerName

    Ответ:

    Автор ответа: P@Ssword

    Определить:
             На форму - Winsock, у него свойство LocalIP.

    Задавать:
             Никак. На этом основано отслеживание IP - адресов в голосованиях, и т.д., и т.п., и ДТП.


    Вопрос:

       На форме имеется PictureBox с файлом имя.bmp на этой картинке выводятся числа вертикально и горияонтально. На экране все видно. При печате (Printer.PaintPicture Picture1.Picture, 0, 0) не выводятся эти числа. Как быть?

    Ответ:

    Автор ответа: Артём

    Ты просто печатаешь картинку, загружённую из файла. Чтоб напечатать то, что было написано и нарисовано, используй picture1.image


    Вопрос:

       Как сделать чтобы просматривать рисунок размерами больше формы

    Ответ:

    Автор ответа: P@Ssword

    1) Если немного ламерски, но быстро - кладешь на форму два скроллбара и пикчебокс, в него - еще один пикчебокс. Во второй пикчебокс кладешь картинку, а первый делаешь маленького размера. Затем можно двигать второй куда угодно.

    2) Можно воспользоваться Image со Stretch = True.


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

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

    наверх


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

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