Просматривают:
1 Анонимно
Подскажите чайнику |
||
|
||
---|---|---|
Новичок
Присоединился:
2008/1/11 18:23 Сообщений: 2
|
Здраствуйте!
Помогите чайнику стать немного самоваром Есть задача написать макрос для Corel, который выполняет такую последовательность действий: 1. Рисует контур для фигуры 2. Разбивает получившуюся фигуру на контур и основную фигуру 3. Удаляет исходную фигуру Вроде бы все и просто, можно сделать с использованием конструктора, но есть проблема в том что разбить результирующую фигуру не получается:( Если писать отдельными макросами все отлично, но после первой операции нужно снять выделение и снова выделить фигуру. Как это можно реализовать в коде макроса? Мой код Dim i As Integer Private Sub CommandButton1_Click() i = Val(TextBox1.Text) Dim OrigSelection As ShapeRange Set OrigSelection = ActiveSelectionRange Dim eff1 As Effect Set eff1 = OrigSelection(1).CreateContour(cdrContourInside, 0.19685, i, cdrDirectFountainFillBlend, CreateCMYKColor(0, 0, 0, 100), CreateCMYKColor(0, 0, 0, 100), CreateCMYKColor(0, 0, 0, 100), 0, 2) ActiveSelection.Separate OrigSelection(1).Delete UserForm1.Hide End Sub
Опубликовано: 2008/1/11 18:30
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Титан
Присоединился:
2005/11/18 20:12 Откуда Ukraine
Сообщений: 1656
|
lusin а зачем? это два клика мышью
Опубликовано: 2008/1/11 20:19
|
|
_________________
едэм дас зайнэ и ниипёт |
||
|
Re: Подскажите чайнику |
|
---|---|---|
Новичок
Присоединился:
2008/1/15 10:05 Откуда Челябинск
Сообщений: 20
|
Private i As Integer
Private Sub CommandButton1_Click() i = Val(TextBox1.Text) Dim OrigSelection As ShapeRange Dim eff1 As Effect Set s1 = ActiveShape Set eff1 = s1.CreateContour(cdrContourInside, 0.19685, i, cdrDirectFountainFillBlend, CreateCMYKColor(0, 0, 0, 100), CreateCMYKColor(0, 0, 0, 100), CreateCMYKColor(0, 0, 0, 100), 0, 2) eff1.Contour.ContourGroup.AddToSelection ActiveSelection.Separate s1.Delete UserForm1.Hide End Sub
Опубликовано: 2008/1/15 11:59
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Новичок
Присоединился:
2008/1/15 10:05 Откуда Челябинск
Сообщений: 20
|
Вот тут поторопился - убери в моём примере:
Dim OrigSelection As ShapeRange Оно не нужно :-)))
Опубликовано: 2008/1/15 12:01
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Новичок
Присоединился:
2008/1/15 10:05 Откуда Челябинск
Сообщений: 20
|
Цитата:
А если таких объёктов 1000?.. :-)
Опубликовано: 2008/1/15 12:03
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Титан
Присоединился:
2005/11/18 20:12 Откуда Ukraine
Сообщений: 1656
|
magnus_z ctrl+a, левой мышей на прозрачности, правой на ккаком-то цвете, потом в свойства обводдки, ставим нужные параметры (типа скругления углов или толщину или еще что-то), потом ctrl+q, ctrl+g, все кроме этой группы удалить, выделить группу и ctrl+u (не часто у меня возникает необходимость в таких действиях, но они все производятся нажатие хоткеев и потому я и спрашивал о целефообразности
Опубликовано: 2008/1/15 21:11
|
|
_________________
едэм дас зайнэ и ниипёт |
||
|
Re: Подскажите чайнику |
|
---|---|---|
Новичок
Присоединился:
2008/1/11 18:23 Сообщений: 2
|
оказывается всё до безумия просто, делов то запомнить исходную фигуру а затем удалить ее
всем большое спасибо за помощь
Опубликовано: 2008/1/16 14:12
Edited by lusin on 16/01/2008 14:34:33
|
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Пользователь
Присоединился:
2006/3/25 17:57 Сообщений: 33
|
Здравствуйте!
Люди добрые подскажите! Есть макрос который экспортирует выделеный объект в EPS в строго указаное место и под строго указаным именем. Как сделать что бы он экспортировал в строго указанное место но каждый раз под новым именем? Надеюсь на вашу помощь!
Опубликовано: 2008/1/30 4:26
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Пользователь
Присоединился:
2006/3/25 17:57 Сообщений: 33
|
ну может хоть кто нить подскажет как решить этот вопрос?!
Опубликовано: 2008/2/1 4:02
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Новичок
Присоединился:
2008/1/15 10:05 Откуда Челябинск
Сообщений: 20
|
Цитата:
VUV wrote: ну может хоть кто нить подскажет как решить этот вопрос?! Эта задача для VB, для VBA решается так же. При экспорте нового файла задай ему новое имя. Здесь, к примеру, имя можно сделать состоящим из года, месяца, дня, часа, минуты и секуды - тогда твои имена точно будут уникальными :-))) В этом случае имя экспортируемого eps будет: Format(Date, "yymmdd") & Format(Time, "hhmmss") & ".eps" Или исползуй генератор случайных чисел. Или добавляй в начало (или в конец, перед ".eps") файла порядковый номер. Решений может быть множество - выбирай любое :-)
Опубликовано: 2008/2/1 6:16
|
|
|
Re: Подскажите чайнику |
|
---|---|---|
Пользователь
Присоединился:
2006/3/25 17:57 Сообщений: 33
|
Цитата:
СПАСИБО!!! Очень помог, то что нужно!!!
Опубликовано: 2008/2/4 1:40
|
|