Техническая поддержка :

Современные решения

для защиты Windows программ

и восстановления исходного кода

Обсуждение программирования на Visual Basic в конференции ru.visual.basic


Re: Создать эллиптический регион

From: "A. Skrobov"

Hello, Pasha!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov" to A. Skrobov on Fri, 02 Jan 2004
03:52:26 +0300:

AS>> Есть ли способ создать эллиптический регион? CreateEllipticRgn
AS>> обрезает у эллипса правый и нижный ряд пикселов, превращая эллипс в
AS>> чёрти что. Есть ли какой-то другой способ, кроме создания такого
AS>> региона из набора прямоугольников, рассчитывая их границы самому?
PO> В случае .NET это очень просто. Вот код на C#, который без труда
PO> переписывается на VB (this -> Me, остальное очевидно):
[Sorry, skipped]
PO> Мораль такая: создаем экземпляр класса GraphicsPath, пихаем туда эллипс,
PO> потом на основе него создаем экземпляр класса Region, который суем в свойство
PO> Region.

=========Beginning of the citation==============
The following table shows which drawing functions can be used on the different Windows operating systems.

Drawing function Operating system
AngleArc Windows NT/2000
Arc Windows NT/2000
ArcTo Windows NT/2000
Chord Windows NT/2000
CloseFigure Windows 95/98 and Windows NT/2000
Ellipse Windows NT/2000
ExtTextOut Windows 95/98 and Windows NT/2000
LineTo Windows 95/98 and Windows NT/2000
MoveToEx Windows 95/98 and Windows NT/2000
Pie Windows NT/2000
PolyBezier Windows 95/98 and Windows NT/2000
PolyBezierTo Windows 95/98 and Windows NT/2000
PolyDraw Windows NT/2000
Polygon Windows 95/98 and Windows NT/2000
Polyline Windows 95/98 and Windows NT/2000
PolylineTo Windows 95/98 and Windows NT/2000
PolyPolygon Windows 95/98 and Windows NT/2000
PolyPolyline Windows 95/98 and Windows NT/2000
Rectangle Windows NT/2000
RoundRect Windows NT/2000
TextOut Windows 95/98 and Windows NT/2000

=========The end of the citation================
Т.е. на 9х это тоже не заработает.


--
To prevent your mail from being filtered out, simply quote this line in your message body. A464E022



* Origin: Talk.Mail.Ru (2:5020/400)


Заморочка с StdFont

From: Андрей Y

Открываю VB6 - новый проэкт. Вставляю пример из MSDN - раздел Font
Object. Строка из примера
Dim X As New StdFont
работает без проблем.

Беру свой старый проэкт перегнанный в МИ6 еще из VB3. Вставляю тот же
пример (не важно - в одну из старых форм или в новую -
свежедобавленную) - ругается на эту строку: "Compile error: User-
defined type not defined".

Видимо при переходе к более высоким версиям в проэкт не добавилось. Что
это может быть и как это добавить?

Спасибо


--
Объяснение принципов помогает думать. Примеры учат обезьянничать.
Если надумаете е-мылить - лучше andreyz2000#hotmail com

* Origin: Talk.ru (2:5020/400)


Re: Задеpжка в 0.5 секунды

From: "A. Skrobov"

Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "All" to All on Fri, 02 Jan 2004 14:39:56 +0300:

AA> Как сделать сабж? Даже бы Sleep подошёл, но как он pаботает? Вpоде чеpез
AA> какую-то функцию надо вызывать. Или скажите альтеpнативный способ
AA> осуществления сабжа. Спасибо.
AA> Пpимечание: Хочу чтобы чеpез каждые 0.5 секунды менялась позиция
AA> Line(линии).
Положи на форму таймер.


--
To prevent your mail from being filtered out, simply quote this line in your message body. A464E022



* Origin: Talk.Mail.Ru (2:5020/400)


Re: Заморочка с StdFont

From: Alexander Asyabrik

Привет, Андрей.

Вы, было дело, писали 2 января 2004 г., 13:32:

АY> Dim X As New StdFont

АY> Беру свой старый проэкт перегнанный в МИ6 еще из VB3. Вставляю тот же
АY> пример (не важно - в одну из старых форм или в новую -
АY> свежедобавленную) - ругается на эту строку: "Compile error: User-
АY> defined type not defined".

АY> Видимо при переходе к более высоким версиям в проэкт не добавилось. Что
АY> это может быть и как это добавить?

StdFont - дитя OLEAutomation (сделай ссылку на stdole2.tlb)




--
С уважением, Alexander
12:48:33 PM



* Origin: Talk.Mail.Ru (2:5020/400)


Re: Заморочка с StdFont

From: Андрей Y


>> Dim X As New StdFont
>> Беру свой старый проэкт перегнанный в МИ6 еще из VB3.
>>.........
>> ругается на эту строку: "Compile error: User-
>> defined type not defined".

> StdFont - дитя OLEAutomation (сделай ссылку на stdole2.tlb)

А как эту ссылку добавить если не секрет?
Спасибо

--
Объяснение принципов помогает думать. Примеры учат обезьянничать.
Если надумаете е-мылить - лучше andreyz2000#hotmail com

* Origin: Talk.ru (2:5020/400)


Задеpжка в 0.5 секунды

H!, _[Андpей]_!
АY> А чем контpоль Timer не подходит?
Совсем башка киpпичём на голову ;)


g'bye and g'luck, _[Андpей]_!
* Origin: Down/Upload Soft: kraki.cvalka.net (2:5054/29.33)


Задеpжка в 0.5 секунды

H!, _[A.]_!
AS> Положи на фоpму таймеp.
Забыл пpо него.
2All: Где можно подpобнее флаги OpenDialog-a посмотpеть?

g'bye and g'luck, _[A.]_!
* Origin: S2k - revengecrew.org (2:5054/29.33)


Создать эллиптический регион

Здравствуйте, A!

Friday January 02 2004 13:32, A. Skrobov -- Pasha Oleinikov:

AS> Ellipse Windows NT/2000
AS> Т.е. на 9х это тоже не заработает.

Вот отрывок из MSDN за апрель 2003 года:

The Ellipse function draws an ellipse.
Requirements
Windows NT/2000/XP: Included in Windows NT 3.1 and later.
Windows 95/98/Me: Included in Windows 95 and later.
Header: Declared in Wingdi.h; include Windows.h.
Library: Use Gdi32.lib.

Hо ведь я совсем не об этом говорил! Я не перестаю удивляться тому, как можно до сих пор пользоваться VB6 и напрямую вызывать функции API? VB6 как язык уже давно морально устарел, копаться в API - далеко не самое приятное занятие, да и вызовы API-функций в коде смотрятся омерзительно. Hо ведь уже года два есть VB .NET и .NET Framework (в данный момент 1.1)! Да и 9x тоже давно пора на помойку выбросить... Я ведь не для красоты о .NET упомянул, причем в данном контексте как о библиотеке классов. Те классы, о которых я упомянул (GraphicsPath и Region), входят в состав вышеупомянутой библиотеки, и при ее использовании обычно не приходится задумываться над тем, заработает это под 9х или нет, потому что .NET Framework пока что ставится и на 9х (хотя если они откажутся от совместимости с 9х, я совершенно не расстроюсь).

С уважением, Pasha
* Origin: СПбГПУ, ФПС, ПОПКиЛС, 3 семестр (www.avalon.ru) (2:5030/1212)


Re: О строках фиксированной длины

Мы где-то виделись, A.?

02 Jan 04 13:32:40 в RU.VISUAL.BASIC A. Skrobov -> мне:

AS> 2) Я не уверен, создаётся для них BSTR-копия или BSTR-обёртка

BSTR-обертка для них невозможна, поскольку, afaik, перед данными BSTR-строки
хранится DWORD(длина_строки), а сабжи, опять-таки afaik, хранят только свое
содержимое.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)


Re: VB

Мы где-то виделись, A.?

02 Jan 04 13:32:41 в RU.VISUAL.BASIC A. Skrobov -> мне:

AA>>>> Вопpос: Как из стpоки System.ini отнять ".ini", т.е. чтобы получилось
AA>>>> "System".
AS>>> MsgBox Left(String, InStrRev(String, ".") - 1)
DK>> А если точки нет? :(
AS> В "System.ini"-то?

Hет, в CommonDialog1.FileName.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)



Назад Содержание Вперед




Главная     Программы     Статьи     Разное     Форум     Контакты