pop3k

Użytkownik forum
  • Postów

    64
  • Dołączył

  • Ostatnia wizyta

Ostatnie wizyty

Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.

Osiągnięcia pop3k

Początkujący

Początkujący (1/6)

3

Reputacja

  1. Dzięki za ekspresową odpowiedź. Tak, o to chodziło.
  2. Witam od zwcada 2024 zmieniła się funkcja wydłuż / extend. Program nie prosi już domyślnie o krawędź do wydłużenia. Pamiętam, że jest jakaś zmienna, która przywraca działanie funkcji jak w poprzednich wersjach. Podpowiecie mi jaka?
  3. Albo inaczej - czy obok własnych ikonek interfejsu można dodać ikonkę/kontrolkę typu textbox która będzie obsługiwana poprzez VBA?
  4. Czy poprzez VBA można wpłynąć na zmianę obrazka w ikonce interfejsu? Nie chodzi mi o standardowe ikonki tylko o te dodane przeze mnie. Po kliknięciu w ikonkę chciałbym, żeby podmieniła się bitmapa a tym samym kolor tej oraz sąsiedniej ikonki. Jeżeli nie przez VBA to da się przez C#?
  5. Macie może informacje czy w wersji 2024 zostało to poprawione?
  6. Cześć, zauważyłem kolejny błąd w ZWCAD, proszę o pomoc w możliwościach. Napisałem sobie taki prosty kod ze wstawieniem bloku. Blok posiada okrąg i atrybuty. Zauważyłem, że po kolejnym wstawieniu bloku lokalizacja względem obiektu - kwadrant koła - przestaje działać na bloku. Wszystko przedstawia poniższy filmik. Kod: Private Sub CommandButton1_Click() UserForm1.hide Dim BlockRef As ZcadBlockReference Dim BlockAttributes As Variant Dim PIERWSZY As Variant Dim FileToInsert As String PIERWSZY = ThisDrawing.Utility.GetPoint(, "Podaj punkt P1") FileToInsert = "C:\e-cad\e-cad Zelbet Stal Drewno\Bloki\Opisy\e-cad_ZelbetOpis_7.dwg" Set BlockRef = ThisDrawing.ModelSpace.InsertBlock(PIERWSZY, FileToInsert, 1, 1, 1, 0) BlockAttributes = BlockRef.GetAttributes BlockAttributes(0).TextString = "blok" BlockRef.Update Exit Sub End Sub (W kodzie dodałem na końcu Exit Sub, bo myślałem, że obiekt gdzieś wiruje w tle ale to nic nie dało. W filmiku tego Exit Sub nie było) Filmik: http://cloud.movavi.com/show/47b0ff05-a0a5-4862-8df1-0a48f3990d14
  7. Działa. Czyli jest rozwiązanie tymczasowe. entity = "(handent " & Chr(34) & BlockRef.Handle & Chr(34) & ")" punkty = pt1(0) & "," & pt1(1) & " " & pt2(0) & "," & pt2(1) punkt1 = Replace(pt1(0), ",", ".") punkt2 = Replace(pt1(1), ",", ".") punkt3 = Replace(pt2(0), ",", ".") punkt4 = Replace(pt2(1), ",", ".") punkt = punkt1 & "," & punkt2 & " " & punkt3 & "," & punkt4 ThisDrawing.SendCommand "_MIRROR" & vbCr & entity & vbCr & vbCr & punkt & vbCr & "Tak" & vbCr ThisDrawing.SendCommand "STR_ZPP_v2" frm_ZP_v2.hide Zapisuję kod na forum dla tych co szukają gotowego rozwiązania. Dziekuję!
  8. Drugie pytanie: czy funkcja vba object.mirror znajduje się w bibliotece ZWCAD 2021 Type Library? A może w innej? A może mogę podmienić biblioteki? Nie wiem, plik?
  9. A mi przychodzi. Tylko nie wiem jak. Czy można wywołać funkcję lustra z poziomu vba? tak, żeby podczas wykonywania linii sam sobie napisał wywołanie funkcji, podał 2 punkty charakterystyczne dla lustra i kontynuował kod VBA?
  10. Faktycznie lepiej będzie przedstawić to na obrazku. Skróciłem blok i zwymiarowałem jego punkty charakterystyczne. To, jak było w ZWCAD 2020 i jak jest w 2023. Widać, że w 2023 (drugi atrybut tekstowy) funkcja mirror dokładnie odbija wskazane punkty a nie tak jak funkcja lustro i w 2020 czyli jakby dopasowuje do wielkości tekstu i tam wstawia punkt charakterystyczny
  11. Na filmiku - blok górny został przygotowany tak jak ma być finalnie. Niestety nie mam już dostępu do wersji 2020 bo miałem jakiś błąd prze który musiałem przeinstalować i wybrałem aktualizację (przy okazji) do wersji 2023. Na słowo - musicie mi uwierzyć, że blok był prawidłowo odbijany tak, jakby go zrobić lustrem w opcjach cadowskich.
  12. Trochę tak, ale wtedy literki w bloku są w odbiciu lustrzanym 😕
  13. Pracuję już długo na swoim makrze. Wszystko działało na Zwcad 2020 do czasu przejścia na Zwcad 2023 SP2. Doszedłem do tego, że object.Mirror nie działa prawidłowo na blokach. Niby odbija lustrzanie blok ale nie jego atrybuty. Wszystko nagrałem na poniższym filmiku. Macie jakieś porady jak to naprawić? '******** bigle ********* '------------------------ If typ = "bigle" Then BlockAttributes(0).TextString = ilosc & "%%c" & srednica & "-U-co" & d If typ = "bigle" And PIERWSZY(0) < DRUGI(0) And blizszyKierunek = "poziom" Then pt1(0) = TRZECI(0) pt1(1) = TRZECI(1) pt2(0) = pt1(0) pt2(1) = CZWARTY(1) MsgBox "pt1(" & pt1(0) & "," & pt1(1) & ")" & vbNewLine & "pt2(" & pt2(0) & "," & pt1(2) & ")" Set objDrawingObject = BlockRef.Mirror(pt1, pt2) MsgBox "Set objDrawingObject = BlockRef.Mirror(pt1, pt2)" objDrawingObject.Update MsgBox "objDrawingObject.Update" BlockRef.Delete End If http://cloud.movavi.com/show/ae358aa9-062f-42d0-a41c-308042aa56db
  14. Będę ogarniał użycie tych komórek, ale podpowiedz co najlepiej z nimi robić? Zapisywać w tablicy i w niej szukać, w kolekcji i w niej szukać, czy bezpośrednio z excela za każdym razem pętlić? A może inny sposób?