| |
| MDG Engineering Nutzt Xometry, Um Medizinische Geräte Zu Bauen Und Das Globale Wachstum Voranzutreiben, ein Anwenderbericht
|
Autor
|
Thema: View Refresh bei Add on Desktop (1045 mal gelesen)
|
TO-BE Mitglied Inf.
Beiträge: 3 Registriert: 17.11.2004
|
erstellt am: 17. Nov. 2004 14:07 <-- editieren / zitieren --> Unities abgeben:
Guten Tag Ich adde ein Objekt zum Desktop. Jedoch wird das neue Objekt erst angezeigt wenn man F5 drückt. Wie kann ich die sicht aktualisieren per Code (VB)? Mit der Funktion GuiSrv.SmViewWindows.Refresh funktioniert es bei jedem anderen Link, nur beim hinzufügen als Desktopobjekt nicht... Danke für die Hilfe Gruss Tobias
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ChristianS Moderator Leiter Kundenbetreuung
Beiträge: 635 Registriert: 27.09.2000
|
erstellt am: 17. Nov. 2004 15:10 <-- editieren / zitieren --> Unities abgeben: Nur für TO-BE
Hi, ich bin nicht sicher ob es auch für 'OnDesktop' funktioniert, Aber schau dir mal das Link2Folder script im SMARTEAM Scriptverzeichnis an. Ich denke mit den letzten beiden Routinen sollte es auch bei Desktop Objekten gehen. Gruß Christian
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KleinerMuck Mitglied
Beiträge: 111 Registriert: 12.08.2002
|
erstellt am: 29. Nov. 2004 10:58 <-- editieren / zitieren --> Unities abgeben: Nur für TO-BE
Hallo TO-BE, wie sieht denn Dein Szenario aus? Was macht der Benutzer / Dein Script? Wann wird es wie ausgeführt? Erscheint bei Dir die Abfrage, ob das Objekt zum Desktop hinzugefügt werden soll? Wenn ich bspw. ein Dokument mit Drag&Drop von einem Dokumenten-Baum auf den Desktop eines anderen Projekts im Dokumenten-Baum ziehe, wird der Update auotmatisch durchgeführt. In VB-code verwende ich die Funktion .Refresh - die bisher immer funktioniert hat. Grüße Kleiner Muck Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TO-BE Mitglied Inf.
Beiträge: 3 Registriert: 17.11.2004
|
erstellt am: 06. Dez. 2004 15:21 <-- editieren / zitieren --> Unities abgeben:
Die Funktion wird im tree als Benutzerdefinierte Funktion hinzugefügt. Es wird dabei eine erweiterte Kopie des angewählten Objektes erstellt und an den selben Folder gelinkt. Wenn das Objekt, von dem aus die Funktion aufgerufen wird, an den Desktop gelinkt ist, soll das neue Objekt natürlich auch an den Desktop gelinkt werden, was auch funktioniert, nur das refreshen nicht... TO BE Ps. ich benutze diese Funktion:
Code: Function RefreshOnAllViews(SmSession As SmApplic.SmSession, LinkObj As SmApplic.ISmObject, rfAction As Integer) Dim RefreshedObjs As SmApplic.ISmObjects Dim GuiSrv As SmGUISrv.SmGUIServices Dim ViewWins As SmGUISrv.ISmViewWindows Dim SpecViewWin As SmGUISrv.ISmViewWindow Dim Count As Integer Dim i As Integer Set RefreshedObjs = SmSession.ObjectStore.NewObjects RefreshedObjs.Add LinkObj Set GuiSrv = SmSession.GetService("SmGUISrv.SmGUIServices") GuiSrv.SmViewWindows.Refresh rfAction, RefreshedObjs, True End Function
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ChristianS Moderator Leiter Kundenbetreuung
Beiträge: 635 Registriert: 27.09.2000
|
erstellt am: 06. Dez. 2004 15:52 <-- editieren / zitieren --> Unities abgeben: Nur für TO-BE
|
TO-BE Mitglied Inf.
Beiträge: 3 Registriert: 17.11.2004
|
erstellt am: 06. Dez. 2004 16:40 <-- editieren / zitieren --> Unities abgeben:
|
KleinerMuck Mitglied
Beiträge: 111 Registriert: 12.08.2002
|
erstellt am: 07. Dez. 2004 19:20 <-- editieren / zitieren --> Unities abgeben: Nur für TO-BE
Hallo TO-BE, beir mir hat es geholfen, das gesamte aktive Fenster zu "refreshen":
Dim SmGUISrv As SmGUISrv.SmGUIServices Dim SmViewWindow As SmGUISrv.ISmViewWindow Dim SmObjsProductsToRefresh As SmApplic.ISmObjects Set SmGUISrv = SmSession.GetService("SmGUISrv.SmGUIServices") Set SmViewWindow = SmGUISrv.ActiveViewWindow Set SmObjsProductsToRefresh = SmSession.ObjectStore.NewObjects SmObjsProductsToRefresh.Add SmObjNew SmViewWindow.SmView.Refresh rfaAdd, SmObjsProductsToRefresh, False Wobei SmObjNew das neu erzeugte Objekt repräsentiert. Dabei bleiben ggf. expandierte Bäume auch weiterhin expandiert. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |