SolidWorks >> Makra >> Przejście z VBA na VSTA
Autor Wypowiedź
.
2012-10-02, 16:05
Pomógł 52 raz(y).
Witam,
Napisałem kilka makr w VBA i nawet fajnie wszystko działa.
Teraz zachęcony słowami Michała Karpiuka chcę przejść na VSTA bo podobno jest lepszy i w ogóla.
No .... narazie można powiedzieć porażka. Wprawdzie udało mi się przerobić jeden z programów w VBA i go nawet uruchomić , ale ciężko jest. Różnic jes wiele i ogólnie jest bardziej upierdliwy. Otwarcie projektu do edycji po bardzo wielu kliknięciach . Gotowe makro DLL otwiera się wolniej niż SWP makro nie jest jednym plikiem tylko paketem złożonym z 5 plików DLL.
Ale powiedzmy ten typ tak ma.
Teraz postawiłem sobie ambitnikejsze zadanie, chcę wprowadzić swoje okienko (UserForm) i niestety stanąłem przed murem.
Jak się to robi w VSTA, bo podglądanie VisualStudio nic nie daje
W VBA uruchamiało się okienko tak:

Sub main()
UserForm1.Show
End Sub

i już.

Będę wdzięczny za wszelkie wskazówki.
Pozdrawiam
 
Wykonam każde makro w SolidWorks
2012-10-02, 18:38
Pomógł 12 raz(y).
http://adksolid.blogspot.com/2012/01/makro-w-vsta-czv.html
 
.
2012-10-03, 08:21
Pomógł 52 raz(y).
Dziękuję za odpowiedź ale .... hmmm pod tym linkiem nie ma żadnych informacji.
Chyba , że ja o czymś nie wiem :)
 
2013-08-27, 21:18
Pomógł 1 raz(y).
Dim form1 As Form1
form1 = New Form1
form1.Show()
 
.
2013-09-02, 09:22
Pomógł 52 raz(y).
Dzięki za podpowiedź ale nadal kicha. Tzn nie ma już błędu ale nadal nie pojawia się okno dialogowe.
Fragment mojego kodu:

Message= "Jakiś tam napis . . . "
Dim UserControl1 As UserControl1
UserControl1 = New UserControl1
UserControl1.TextBox1.Text = Message
UserControl1.Show()

Ja sobie narazie odpuściłem VSTA ale chciałbym jednak do tego wrócić.
 
2013-09-02, 19:31
Pomógł 1 raz(y).
Sam komponent UserControl1 musisz zamieścić na user Form . UserControl1 powinno być dostępne w Toolboxie

Dim Message As String = "Jakiś tam napis . . . "
Dim Form_temp As Form1
Form_temp = New Form1
Form_temp.UserControl11.TextBox1.Text = Message
Form_temp.Show()
 
.
2013-09-03, 16:57
Pomógł 52 raz(y).
Dalej nie rozumiem. UserControl1 jest zdefiniowane i okienko jest zaprojekrowane. Posiada pole tekstowe TextBox1.
Jak uruchamiam program to nic się nie dzieje (nie pojawia się okienko, które się nazywa UserControl1) i program kończy pracę.
 
2013-09-03, 19:32
Pomógł 1 raz(y).
Uruchom edycję makra.

Project > add Windows form (dodaj windows form - nazwa Form1)

Przy edycji Form1 , w toolboksie, w części nazwa_Makra Components powinien być stworzone przez Ciebie wcześniej UserControl1. Dodaj go na Form1, przybierze on nazwę UserControl11. Na koniec dodaj kod podany wcześniej.

Nie wiem dlaczego samo UserControl się nie pojawia.
 
.
2013-09-04, 08:47
Pomógł 52 raz(y).
No, pierwsze koty za płoty :D. Wreszcie zaczynam łapać, ale jeszcze długa droga przede mną.
 
ABASTRAN - ZADASZENIA MEMBRANOWE
2015-11-13, 08:51
Pomógł 0 raz(y).
Mam tak sam problem okno pojawia się n a ułamek sekundy i znika, zrobiłam jak pisał Grzegorz Mądry
 
ABASTRAN - ZADASZENIA MEMBRANOWE
2015-11-13, 08:51
Pomógł 0 raz(y).
Mam tak sam problem okno pojawia się n a ułamek sekundy i znika, zrobiłam jak pisał Grzegorz Mądry
 

PSWUG

Strefa Resellera

Publikuj

Społeczność

Ankieta

Linki

RSS

BOT