Zajmujemy się tworzeniem i pisaniem programów oraz nakładek na AutoCAD®, BricsCAD®, GstarCAD®, ZwCAD®, ZwCAD+ Plus®
Zaloguj się           Zarejestruj się          FAQ          Szukaj

Odpowiedz  [ 6 posty(ów) ] 
Autor Wiadomość
 Temat postu: ActiveSelectionSet.Count zwraca 0
PostWysłany: Pon Lut 27, 2012 10:19 am 

Dołączenie: Pon Lut 27, 2012 10:17 am
Posty: 3
Offline
Mam pytanie, natknąłem się na problem w VBA przy korzystaniu z ActiveSelectionSet:

http://forum.projektuje.net/activeselec ... -vt615.htm

Czy ktoś z Was zna może jakieś obejście ?

Z góry dziękuję
b


 Profil  
 
 Temat postu: Re: ActiveSelectionSet.Count zwraca 0
PostWysłany: Wto Lut 28, 2012 2:15 pm 
Awatar użytkownika
Administrator
Dołączenie: Wto Lut 17, 2009 6:17 pm
Posty: 196
Offline
Poniżej algorytm jak można to napisać:
1. Zadeklarować zmienną typu ZwcadSelectionSet i stworzyć pusty zbiór wskazań
2. Określić filtr i ograniczyć go do typu linii "LINE"
3. Pobrać do zbioru wskazań wszystkie obiekty z rysunku, lub zaznaczyć na ekranie dowolną ilość obiektów. Dzięki zadeklarowanym filtrom w pkt. 2, do zbioru wskazań zostaną pobrane tylko obiekty typu linia.
4. Przy pomocy pętli odczytywać właściwości kolejnych elementów pobranych do zbioru wskazań (czyli linii, bo tylko takie się w nim znajdą dzięki filtrowi z pkt. 2)


 Profil WWW  
 
 Temat postu: Re: ActiveSelectionSet.Count zwraca 0
PostWysłany: Wto Lut 28, 2012 9:41 pm 

Dołączenie: Pon Lut 27, 2012 10:17 am
Posty: 3
Offline
Nie wiem czy dobrze to rozumiem, ale coś mi mówi że tą drogą nie osiągnę tego czego chcę.
Otóż chcę pobrać elementy z aktywnego zaznaczenia. Nic już nie zaznaczać - tylko zaczytać to co jest zaznaczone (bez względu na typ elementów). Po prostu odpalam makro i mam mieć do dyspozycji zbiór elementów które były zaznaczone przed jego uruchomieniem.

b


 Profil  
 
 Temat postu: Re: ActiveSelectionSet.Count zwraca 0
PostWysłany: Śro Lut 29, 2012 7:36 am 
Awatar użytkownika
Administrator
Dołączenie: Wto Lut 17, 2009 6:17 pm
Posty: 196
Offline
Rozumiem ideę, która na moje potrzeby wydaje się jednak mało użyteczna, choć nie twierdzę że jest zupełnie bez sensu. Po sprawdzeniu w ZwCAD, faktycznie działa to dość nieprzewidywalnie i doradzałbym jednak wciągniecie mechanizmu pobierania danych do zbioru wskazań w kontrolowalną przez Pana procedurę lub funkcję. Nawet dla użytkownika końcowego jest bardziej oczywiste jeżeli będzie widział, że coś nie bierze się z "niczego".


 Profil WWW  
 
 Temat postu: Re: ActiveSelectionSet.Count zwraca 0
PostWysłany: Śro Lut 29, 2012 5:48 pm 

Dołączenie: Pon Lut 27, 2012 10:17 am
Posty: 3
Offline
Sens tego jest taki, że użytkownik ma sobie zaznaczyć to co chce i tak jak mu wygodnie, a potem odpala narzędzie (VBA) i owo narzędzie robi coś z tymi danymi.
Oczywiście można by to zrobić z użyciem Utility.SelectOnScreen, ale z pewnych względów tego nie chcę.
No nic pozostaje czekać na reakcję producenta, która jest IMHO nieśpieszna.

Dziękuję za podpowiedzi!!!

Pozdrawiam
b


 Profil  
 
 Temat postu: Re: ActiveSelectionSet.Count zwraca 0
PostWysłany: Nie Mar 04, 2012 6:03 pm 
Awatar użytkownika
Administrator
Dołączenie: Wto Lut 17, 2009 6:17 pm
Posty: 196
Offline
Bardzo proszę. :)


 Profil WWW  
 
Wyświetl posty z poprzednich:  Sortuj według  
Odpowiedz  [ 6 posty(ów) ] 

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość




Szukaj:
Skocz do:  
 cron

Ta strona używa plików Cookies - Polityka plików Cookie.