powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вывести текст заданным цветом
18 сообщений из 18, страница 1 из 1
Вывести текст заданным цветом
    #39313476
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть макрос:
Код: vbnet
1.
2.
3.
4.
Sub Macr()
  ActiveLayer.CreateArtisticText ActivePage.CenterX, ActivePage.BottomY, AnyName, _
  cdrRussian, , "Arial", 12, cdrTrue, cdrFalse, , cdrCenterAlignment
End Sub



Код: vbnet
1.
2.
3.
4.
5.
6.
Нужно задать определённый цвет выводимого цвета на слой. Пишу так:
Sub Macr()
  ActiveLayer.CreateArtisticText ActivePage.CenterX, ActivePage.BottomY, AnyName, _
  cdrRussian, , "Arial", 12, cdrTrue, cdrFalse, , cdrCenterAlignment
  ActiveLayer.CMYKAssign 0, 50, 50, 0
End Sub



Но в этом случае текст вообще не выводится на слое.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313478
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТС, напиши, что за чудесная программа, в которой ты работаешь? что-то на VB6 ну никак не похоже.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313496
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

Это военная тайна.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313519
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,

VBA for Application 7.1. Corel Draw X6(x64)
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313525
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сильно =)
такого тут ещё не было.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313532
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One,
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313533
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вряд ли кто-то знаком с объектной моделью данного чуда. поищите у них сайте или в поддержке хэлп по объектам/методам
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313540
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneвряд ли кто-то знаком с объектной моделью данного чуда. поищите у них сайте или в поддержке хэлп по объектам/методам
Ну вот методом тыка за пару минут, к примеру, рабочий вариант
Код: vbnet
1.
2.
3.
4.
Dim k As Shape
Set k = ThisDocument.ActiveLayer.CreateArtisticText(ThisDocument.ActivePage.CenterX, 10, "gggggggggg", _
  cdrRussian, , "Arial", 12, cdrTrue, cdrFalse, , cdrCenterAlignment)
k.Fill.UniformColor.CMYAssign 0, 50, 50


Откуда у автора взялось ActiveLayer.CMYKAssign - не совсем понятно, это все-таки цвет, как он может быть присвоен слою?
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313543
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

А обязательно вводить переменную "k" ?

И почему когда я определяю через переменную "к" параметры текста, то пишу их в скобках. А если напрямую, то скобки не нужны.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313552
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NemoSUNИ почему когда я определяю через переменную "к" параметры текста, то пишу их в скобках. А если напрямую, то скобки не нужны.Думаю, это надо спросить у Алана Купера ))
Другие вопросы синтаксиса VB вопросов не вызывают? )))
В общем, как сделали, так и сделали.


NemoSUNА обязательно вводить переменную "k" ?Нет, конечно, CreateArtisticText возвращает Shape, можно применять методы Shape напрямую к результату.
Однако, это плохой стиль программирования, текст программы будет громоздким и непонятным
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313556
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё. Сработало вот так:
Код: vbnet
1.
ActiveShape.Fill.UniformColor.CMYKAssign 0, 50, 50, 0


Спасибо )
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313621
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProNemoSUNИ почему когда я определяю через переменную "к" параметры текста, то пишу их в скобках. А если напрямую, то скобки не нужны.Думаю, это надо спросить у Алана Купера ))

))))))))))))))
Shocker.ProДругие вопросы синтаксиса VB вопросов не вызывают? )))
Пока ещё не изучил ) Я ж только начинаю. Под себя немного написать.
Shocker.ProОднако, это плохой стиль программирования, текст программы будет громоздким и непонятным
Понял.

Ещё вопрос. Правда не по теме. Ну уж заодно. Как этот код выполнить во всех открытых документах(файлах). В каждом документе(файле) по одной странице.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313625
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NemoSUNвыполнить во всех открытых документах(файлах)Что-нибудь типа
Код: vbnet
1.
2.
3.
4.
Dim doc As Document
For Each doc In Documents
  .....
Next
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313637
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Сенкс.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313640
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, и не стоит в этом случае работать с Active... да и вообще не стоит
http://www.sql.ru/faq/faq_topic.aspx?fid=4344
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313755
NemoSUN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Спасибо за информацию. Но я и с Активом то еле-еле управляюсь. Это же первая моя программа. Да вдобавок, все примеры, что в Инете, сделаны под более младшие версии VBAC (VBA for CorelDraw). Какие-то куски примеров работают, какие-то нет. А при незнании это весьма туго всё состыковать. И нет литературы хорошей по VBAC. Сел за Бейсик - много рутинной работы у меня прибавилось.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313756
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VBA (грубо говоря) можно разделить на две части - VB и Application Model

По первому есть много учебников (надо искать Visual Basic 6, но не более поздние, так как VB.NET - это уже другой язык).

По второму - это конкретно дерево объектов Корела (с которыми в общем-то можно работать и из другого языка, необязательно из VB, но VBA представляет собой удобный сплав).
Дерево объектов можно изучать либо по справке, либо методом тыка с помощью Intellisense - то есть пишешь, к примеру, "ThisDocument", дальше - точку, и выпадает список свойств и методов, у которых также есть свои свойства и методы. Половину задач, связанных с VBA я решаю как раз подобным способом, не зная конкретных методов, я пользуюсь логикой, интуицией и знанием, как устроен документ с точки зрения пользователя. К примеру, я понимаю, что Outline - это свойство фигуры, а не слоя (как пользователь корела), следовательно и буду его искать у фигуры, а у него уже цвет и т.п. Поэтому я и ответил на ваш вопрос, хотя VBAC вижу первый раз в жизни.
...
Рейтинг: 0 / 0
Вывести текст заданным цветом
    #39313757
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и еще возьмите на вооружение запись макросов. Запускаете, делаете в документе нужное действие, останавливаете, смотрите, что записалось. Ибо большинство действий пользователя над документами через всякие менюшки, диалоги и т.п. - это все те же операции над объектной моделью, которые доступны вам через VBA.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вывести текст заданным цветом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]