Visual Basic 6.0 - Создать эллиптический регион
Re: Создать эллиптический регион
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Pasha!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov" <fido7.ru.visual.basic [@] talk.ru>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 <andreyz [@] matchem.kth.se>
Открываю 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" <tyomitch [@] r66.ru>
Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "All" <fido7.ru.visual.basic [@] talk.ru>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 <belmis [@] mail.belpak.by>
Привет, Андрей.
Вы, было дело, писали 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 <andreyz [@] matchem.kth.se>
>> 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: http://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 - http://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 семестр (http://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)