Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Pfad über Dialog auswählen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Pfad über Dialog auswählen (4174 mal gelesen)
mkna
Mitglied
Konstrukteur


Sehen Sie sich das Profil von mkna an!   Senden Sie eine Private Message an mkna  Schreiben Sie einen Gästebucheintrag für mkna

Beiträge: 137
Registriert: 18.03.2005

erstellt am: 09. Aug. 2006 14:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo

Innerhalb eines Makros soll einen Zeichnung abgespeichert werden. Der Name wird aus einem Textfeld des Schriftfeldes ausgelesen.

Die Datei soll nun gespeichert werden mit
DrwDocument.SaveAs Pfad & Name & ".CATDrawing"

Nun würde ich gerne den gewünschten Pfad über einen Dialog ähnlich der FileSelectionBox auswählen. Ich habe bis jetzt keinen entsprechenden Dialog gefunden. Vielleicht weiss jemand von euch wie ich dies realisieren kann.

Oder kann man innerhalb der FileSelectionBox den Dateiname fest vorgeben?

Martin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Timberwolve
Mitglied



Sehen Sie sich das Profil von Timberwolve an!   Senden Sie eine Private Message an Timberwolve  Schreiben Sie einen Gästebucheintrag für Timberwolve

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 14:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo,

meines Wissens nach kann der Dateiname nicht voreigestellt werden bei einer SelectionBox.
Die Lösung für dein Problem wäre eine Inputbox, wobei man hier eben nicht sehr komfortabel die Verzeichnisse auswählen kann

GRuss Timber

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mathias.bergundthal
Mitglied
informatiker


Sehen Sie sich das Profil von mathias.bergundthal an!   Senden Sie eine Private Message an mathias.bergundthal  Schreiben Sie einen Gästebucheintrag für mathias.bergundthal

Beiträge: 153
Registriert: 03.08.2005

HP xw6000 - WXP Pro SP2 - CATIA V5 R16 SP9 - Visual Studio 2005

erstellt am: 09. Aug. 2006 14:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo mkna,

mit was entwickelst du vb, vb.net oder makro editor von CATIA? oder sonst was?


gruss, mathias

------------------
In diesem Zeitalter der Massenkomunikation sind Verrücktheiten ansteckend.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mkna
Mitglied
Konstrukteur


Sehen Sie sich das Profil von mkna an!   Senden Sie eine Private Message an mkna  Schreiben Sie einen Gästebucheintrag für mkna

Beiträge: 137
Registriert: 18.03.2005

erstellt am: 09. Aug. 2006 14:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Mathias

Ich kenne mich mit der Programmierung nicht so gut aus. Auch steht mir vb oder vb.net nicht zur Verfügung. Ich programmiere im Catia Visual Basic Editor.

Martin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Timberwolve
Mitglied



Sehen Sie sich das Profil von Timberwolve an!   Senden Sie eine Private Message an Timberwolve  Schreiben Sie einen Gästebucheintrag für Timberwolve

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 14:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Dann solltest du wohl den weg über die Input-Box gehen

Meiner Meinung nach, habe es bisher auch nicht geschafft der Selectionbox einen voreingestellten Dateinamen zu vergeben

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Timberwolve
Mitglied



Sehen Sie sich das Profil von Timberwolve an!   Senden Sie eine Private Message an Timberwolve  Schreiben Sie einen Gästebucheintrag für Timberwolve

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 14:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hier dann mal ein Code mit dem das geht

Code:

Dim mydoc as DrawingDocument
Dim Pfad as String
Dim Name as String

Name = TExtfeld1.Text
Pfad = Inputbox("Bitte hier Verzeichnis eintragen!","Speicherpfad","C:\Temp")

If Pfad <> "" Then

mydoc.SaveAs Pfad & Name & ".CATDrawing

Else

msgbox "Kein Verzeichnis gewählt"

End If


------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Holger_BW
Mitglied
CAx Support


Sehen Sie sich das Profil von Holger_BW an!   Senden Sie eine Private Message an Holger_BW  Schreiben Sie einen Gästebucheintrag für Holger_BW

Beiträge: 80
Registriert: 23.01.2004

CATIA V5R21SP6
Enovia V4 VPM
Enovia V6R2015c
Creo 2.0

erstellt am: 09. Aug. 2006 15:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich


VBA_fuer_Select_folder.txt

 
Hallo Martin,

hier waere ein Code, um einen Pfad über den Standard Windows-Dialog auszuwählen. Den habe ich mir aus den in den Kommentarzeilen angegebenen Quellen zusammengebastelt, frag mich also nicht, was da im Detail so alles passiert ;-)

Gruß, Holger

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mkna
Mitglied
Konstrukteur


Sehen Sie sich das Profil von mkna an!   Senden Sie eine Private Message an mkna  Schreiben Sie einen Gästebucheintrag für mkna

Beiträge: 137
Registriert: 18.03.2005

erstellt am: 10. Aug. 2006 08:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Holger

in welcher Umgebung läuft dein Programmcode. Wenn ich ihn in dem Visualbasic editor von Catia hinneinlade bekomme ich das irgendwie nicht hin. Wie gesagt bin ein Anfänger in Sachen Programmieren.

Aber trotzdem Vielen Dank für Eure Beiträge.

Wenn ich es nicht anders schaffe werde ich einfach in der FileSectionBox bewußt ein Zeichen eingeben und über die Funktion Left alles ausser dieses Zeichen als Pfad weiterverarbeiten.

Im Moment brauche ich diese Funktionalität nur für mich.

Martin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Tstone
Mitglied
Werkzeugkonstrukteur


Sehen Sie sich das Profil von Tstone an!   Senden Sie eine Private Message an Tstone  Schreiben Sie einen Gästebucheintrag für Tstone

Beiträge: 163
Registriert: 04.06.2003

Dell Precision 470
Intel Xeon CPU 3,00GHz
2GB Ram
Microsoft Windows XP
Catia V5 R18 SP6
VB2005

erstellt am: 10. Aug. 2006 09:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo,
versuch es doch mal über das Shell Objekt:

Dim Shell As Object
Dim Ordner As String
Set Shell = CreateObject("Shell.Application")
Ordner = Shell.BrowseForFolder(0, "Wählen Sie", 0).Self.Path

bis denn

------------------
Grüße TStone
  "Respektiere die Macht der Worte, wähle sie mit Bedacht!"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mkna
Mitglied
Konstrukteur


Sehen Sie sich das Profil von mkna an!   Senden Sie eine Private Message an mkna  Schreiben Sie einen Gästebucheintrag für mkna

Beiträge: 137
Registriert: 18.03.2005

erstellt am: 10. Aug. 2006 09:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Suuuppper !!!

Vielen Dank das genau das was ich gesucht habe.

10 U dafür (mehr geht leider nicht)

Nebenbei gefragt was ist die shell.application und welche nützlichen Sachen lassen sich noch damit realsieren. Ist das eine Anwendung wie Excel ?

Martin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Andreas Schaaf
Mitglied



Sehen Sie sich das Profil von Andreas Schaaf an!   Senden Sie eine Private Message an Andreas Schaaf  Schreiben Sie einen Gästebucheintrag für Andreas Schaaf

Beiträge: 10
Registriert: 17.11.2010

CATIA V5 R20

erstellt am: 27. Jun. 2012 17:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Vielen Dank für den nützlichen Tipp und sorry, dass ich das alte Thema wieder ausgrabe, aber ich hab ne unmittelbar anknüpfende Frage:
Kann man diesem Pfadauswahldialog nen Standardpfad beibringen, der schon beim Öffnen voreingestellt ist?
Danke und Gruß
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Teamleader IT-CAD



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5494
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series
Altium Nexus 18
Win 10 Pro x64

erstellt am: 27. Jun. 2012 18:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo Andreas,

in VBA gibt es AFAIK keine Lösung dafür bzw. bietet das Objekt nicht die entsprechenden Eigenschaften. Allerdings kannst du das alles auch in VB.Net machen und von außen auf CATIA zugreifen. Damit ist so ziemlich alles möglich.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Andreas Schaaf
Mitglied



Sehen Sie sich das Profil von Andreas Schaaf an!   Senden Sie eine Private Message an Andreas Schaaf  Schreiben Sie einen Gästebucheintrag für Andreas Schaaf

Beiträge: 10
Registriert: 17.11.2010

CATIA V5 R20

erstellt am: 27. Jun. 2012 20:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo Rick,

danke für die Antwort.
"Von außen" heißt, dass ich ein VB.Net-Programm schreibe, es in der üblichen Windows-Umgebung ausführe und das Programm (ohne VBA- oder CATIA-Korsett) automatisch auf CATIA zugreift? Klingt gut.

Zu diesem Thema hab ich übrigens noch einen Code-Schnippsel aus einem CATScript gefunden:

Code:
Dim oQuelle As String
oQuelle = CATIA.FileSelectionBox("Datei Öffnen", "*.txt", CatFileSelectionModeOpen)

Grüße
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Teamleader IT-CAD



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5494
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series
Altium Nexus 18
Win 10 Pro x64

erstellt am: 27. Jun. 2012 20:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo Andreas,
ja mit .net kannst du alles machen und dir eben auch catia greifen und die libraries laden. Damit hast du in Gänze viel mehr Möglichkeiten. Das Programm selbst kannst du dann auch wieder per vba öffnen und in deine Makroleiste packen. Ich kann dir morgen bissel Beispielcode posten. Einziger Nachteil ist, dass .net etwas langsamer als vba ist, da der Zugriff etwas länger dauert, als die interne Verarbeitung. Aber man hat wirklich extrem mehr Möglichkeiten. So habe ich auch schon Makros/Programme geschrieben, die Smarteam- und CATIAfunktionalitäten vereinen. Man kann mit XML-Strukturen arbeiten, viel mehr Elemente auch auf der GUI verwenden und vor allem die Fehlerbehandlung ist um Welten besser etc.. Ich arbeite eigentlich nur noch mit .Net und habe auch so gut wie alle vorhandenen Makros migriert.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Teamleader IT-CAD



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5494
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series
Altium Nexus 18
Win 10 Pro x64

erstellt am: 28. Jun. 2012 09:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hallo Andreas,
hier mal etwas Beispielcode zu deiner Frage...

Hierfür muss die Library "CATIA V5 InfInterfaces Object Library" importiert werden.

Code:
CATIA fangen:

    'Variable für CATIA definieren
    Public CATIA As INFITF.Application 'alternativ: As Object

    Public Sub GetCatia()

        Try

            'Catia ansprechen
            CATIA = GetObject(, "CATIA.Application")


        Catch ex As Exception

            'Fehlermeldung, wenn CATIA nicht gefunden oder angesprochen werden kann.
            MsgBox(StateMsg, vbCritical, "Catia ist nicht verfügbar!")

        End Try

    End Sub


Hierfür muss ein FolderDialog dem Form hinzugefügt sein.

Code:
Alle geladenen Dateien in einem definierten Ordner sichern:

    Public Sub SaveFiles()

        'Variablen für die Dokumente definieren
        Dim CatiaDocs As INFITF.Documents 'alternativ: As Object
        Dim CatiaDoc As INFITF.Document 'alternativ: As Object
        Dim srcFileName As String
        Dim DestFolder as String
        Dim result As DialogResult

        Try

            'geladene Dokumente von CATIA auswählen
            CatiaDocs = CATIA.Documents
            'Anzeigeordner vorgeben
            OpenFileDialog1.InitialDirectory = C:\Temp
            'Folderdialog aufrufen
            result = = FolderDialog1.ShowDialog()

            'Wenn ein Zielordner mit OK ausgewählt wurde nehme diesen, ansonsten C:\Temp
            If (result = DialogResult.OK) Then

                DestFolder = FolderDialog1.SelectedPath

            else

                DestFolder = C:\Temp

            End If
           
            'Speicher alle in CATIA geladenen Dokumente in dem "ausgewählten" Ordner
            For Each CatiaDoc In CatiaDocs

                srcFileName = CatiaDoc.Name
                CatiaDoc.SaveAs(DestFolder & "\" & SrcFileName)

            Next

        Catch ex As Exception

            MsgBox(ex.ToString)

        End Try

    End Sub


Die Funktion ist ohne Gewähr    , da ich das mehr oder weniger nur heruntergetippt und nicht auf Funktion geprüft habe. Da das hier kein Visual Studio mit Autokorrektur ist, kann ich Schreibfehler also nicht in Gänze ausschließen. Es sollte aber passen, insofern die Randparameter stimmen   

Edit: Hatte noch einen Fehler gefunden 

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Andreas Schaaf
Mitglied



Sehen Sie sich das Profil von Andreas Schaaf an!   Senden Sie eine Private Message an Andreas Schaaf  Schreiben Sie einen Gästebucheintrag für Andreas Schaaf

Beiträge: 10
Registriert: 17.11.2010

CATIA V5 R20

erstellt am: 02. Jul. 2012 11:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mkna 10 Unities + Antwort hilfreich

Hu! Sehr geil, vielen Dank! Da ich mich in den letzten Zügen der Bachelorarbeit befinde, werde ich mich damit erst später befassen, aber es sieht wirklich nach einer Art Allheilmittel aus. Super Tipp!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2020 CAD.de | Impressum | Datenschutz