LIBRERIA DI FEATURE: Istruzione per importare le feature da usare in una macro

gumfab

Utente poco attivo
professione: Progettista
software: NX, Solidworks, Solid Edge
regione: Veneto
Salve a tutti.
Vorrei crearmi dei menu personalizzati per inserire in una parte delle feature preconfezionate caricate da un direttorio definito, bypassando la "Libreria di Feature". Quello che vi chiedo è se sapete dirmi, che codice Vb serve per eseguire l'istruzione che sta alla base della selezione e l'inserimento della feature in una parte. In poche parole vorrei fare lo stesso però in un mio menu. Vi allego anche un'immagine di quello che vorrei fare.Diapositiva1.JPG
 

Be_on_edge

Moderatore
Staff Forum
professione: Progettazione
software: Solid Edge
regione: Emilia Romagna
Se nel tuo menù mostri direttamente i file di queste feature, basta abilitare il drag&drop e non dovrai fare altro.
 

gumfab

Utente poco attivo
professione: Progettista
software: NX, Solidworks, Solid Edge
regione: Veneto
Ciao, ti ringrazio per l'idea, e sono riuscito ad andare un pò avanti, nel senso che ho agganciato il file, riesco a copiarlo per esempio in una finestra di windows, ma ancora non riesco a trovare il modo di rilasciarlo all'interno di SE, mi manca qualcosa, questo è fino a dove sono arrivato:

Imports System.IO
Imports System.Windows.Forms
Public Class Form1
Private Function ListaFiles(ByVal Cartella As String, ByVal Estensione As String) As String()

Dim i As Integer
Dim n As String
Dim f() As String = System.IO.Directory.GetFiles(Cartella, Estensione)

'restituisce un array contenente i nomi dei file con estensione escluso il percorso
For i = 0 To f.Length - 1

f(i) = Path.GetFileNameWithoutExtension(f(i))
Next

Return f

End Function

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
ListBox1.Items.AddRange(ListaFiles("C:\CAD_SE\LIB_FEATURE\CAVE", "*.*"))

End Sub

Private Sub ListBox1_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseDown
Dim SEfile(0) As String
Dim sdir As String = "C:\CAD_SE\LIB_FEATURE\CAVE"
Dim ssel As String
Dim isel As Integer

isel = ListBox1.SelectedIndex
ssel = ListBox1.Items(isel)

Debug.Print(isel.ToString & " " & ssel)
Dim file_full As String = Path.Combine(sdir, ssel & ".par")
Debug.Print(file_full)

Clipboard.SetDataObject(file_full)

SEfile(0) = file_full
Dim SEdataObject As New System.Windows.Forms.DataObject
SEdataObject.SetData(DataFormats.FileDrop, SEfile)
ListBox1.DoDragDrop(SEdataObject, DragDropEffects.All)
End Sub
End Class
 

Be_on_edge

Moderatore
Staff Forum
professione: Progettazione
software: Solid Edge
regione: Emilia Romagna
Mi sono appena accorto che il drag&drop di feature funziona solo dal pannello "libreria di feature" nel pathfinder; occorre quindi trovare quale funzione utilizza Solid Edge per eseguire questa operazione ed implementarla nel drop event.

Se ho tempo più tardi ci guardo

Ciao
 

Statistiche forum

Discussioni
59,350
Messaggi
506,850
Utenti registrati
111,686
Ultimo utente registrato
DARIOBAGNA

Utenti online

Top