Hirdetés
Új hozzászólás Aktív témák
-
Mzmatus
csendes tag
válasz
Fire/SOUL/CD
#3201
üzenetére
Kedves "Fire/SOUL/CD" !
Nagyon köszönöm, hogy ennyit fáradoztál.
A hosszú hétvége nekem ennyire megnyúlt, nemrég értem haza.
Most sorban ártnézem, amit küldtél, és majd fogok jelezni, sikerült-e.
Még egyszer, nagyon köszönöm. -
válasz
Mzmatus
#3194
üzenetére
Claude szerint:
Method 1: Using AutoCAD's GetOpenFilenameSub OpenFileDialog()
Dim fileName As Variant
Dim filterString As String' Define file filter (format: "Description|*.ext")
filterString = "DWG Files (*.dwg)|*.dwg|All Files (*.*)|*.*"' Show open file dialog
fileName = ThisDrawing.Application.GetOpenFilename( _
"Select a file", _
filterString, _
"dwg", _
0)' Check if user cancelled
If VarType(fileName) <> vbBoolean Then
MsgBox "Selected file: " & fileName
' Do something with the file path
Else
MsgBox "No file selected"
End If
End SubUgy tunik ez se letezik. Ezzel lehet esetleg beprobalkozni?
Sub OpenFileUsingCommand()
Dim fileName As String
ThisDrawing.SendCommand "(setq myfile (getfiled " & Chr(34) & "Select File" & Chr(34) & " " & Chr(34) & Chr(34) & " " & Chr(34) & "dwg" & Chr(34) & " 0))" & vbCr
' Then retrieve the variable value
End SubMethod 2 - ugyanaz mint a WinApi, amit korabban Fire/SOUL/CD irt...
Method 3 - .NET-ben van OpenFile Dialog, csak ahoz a kodot at kell irni .NET-re
https://help.autodesk.com/view/OARX/2025/ENU/?guid=OARX-ManagedRefGuide-Autodesk_AutoCAD_Windows_OpenFileDialog -
válasz
Mzmatus
#3198
üzenetére
Annyira el voltam havazva melóval, hogy teljesen kiment a fejemből, hogy hosszúhétvége lesz...

Szóval felpattintottam az AutoCAd 2026-t és megnéztem, mit és hogy lehet VB .NET-l mókolni vele, mert az itt elérhető infók a VB .NET-hez vannak "kitalálva" (lehetne C# nyelven is dolgozni amúgy, csak azt egyrészt nem ismerem annyira ill. a VB .NET nagyon hasonlít a VBA-hoz nyelvezetében, felépítésében stb, nyilván nem véletlen)A VB .NET kód megírásához Visual Studio 2022 Community Edition-t használtam (ingyenes)
1. VB .NET Library Class-t (DLL lesz belőle) így kell létrehozni Visual Studio-val
2. Hogy a megfelelő függvények/osztályok stb rendelkezésre álljanak, ahhoz az AutoCAD-ből 3 referenciát kell hozzáadni, a rendszerből meg egyet. A VB .NET project-t befordítva (build) kapjuk meg majd a DLL-t, ami kell az AutoCAD-nek
3. AutoCAD megnyit, betöltünk egy létező vagy létrehozunk egy üres project-t kiadjuk a NETLOAD parancsot, majd a megjelenő fájlablakban betöltjük a korábban létrehozott DLL-t
4. Most futtatjuk a DLL-ben található függvényünket (ez esetben a FireOpenFileDialog nevet viseli)
5. ha minden rendben, akkor meg kell nyitnia a fájlablakot és amennyiben kiválasztasz egy fájlt (példaprogiban csak DWG/DVB állítottam a szűrőt), akkor egy ablakban kiírja a fájl nevét, teljes útvonalával
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.Runtime
Public Class FireAutoCADOpenFileDialogExample
<CommandMethod("FireOpenFileDialog")>
Public Sub FireOpenFileDialog()
Dim MyOpenFileDialog As New Autodesk.AutoCAD.Windows.OpenFileDialog("FIRE/SOUL/CD - VB.NET FileOpenDialog Class",
"",
"DWG;DVB",
"AutoCAD Drawing/Project Files",
0 'Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags
)
If MyOpenFileDialog.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
System.Windows.Forms.MessageBox.Show(MyOpenFileDialog.Filename)
Else
System.Windows.Forms.MessageBox.Show("Nem választottál ki fájlt.")
End If
End Sub
End ClassEnnyit tudtam tenni az ügy érdekében, rajtad áll, hogy a korábbi WINAPI-s (az VBA kód ugye) avagy emellett döntesz.
![;]](//cdn.rios.hu/dl/s/v1.gif)
UI: Lehet, hogy érdemes lenne az AutoCAD topikban is érdeklődni, hátha van egyéb (és ami fontos, egyszerűbb) megoldás is.
UUI: a #3200-ben lévő megoldás nem működik, felejtős, viszont a #3199 kifogástalanul megy AutoCAD-ben is (mondjuk, mint írtam meg lettem volna lepve, ha nem)...
Új hozzászólás Aktív témák
- Kamera objektív szűrők - UV, Polár, ND - 49, 55, 67, 72, 77, 82 mm
- Xiaomi Redmi Note 13 8/256GB fekete garanciával
- Apple iPhone 13 Pro 1TB,Újszerű,Dobozával,12 hónap garanciával
- Apple iPhone 13 Pro 1TB,Újszerű,Dobozával,12 hónap garanciával
- GALAYOU GALAYOU R1 kültéri WIFI 2K kamera napelemes akkumulátorral
- Mini Pc HP ProDesk 600 G2 G3 G4 /// 6-8. gen //// i3 / i5 /// garancia /// Budapest / MPL / Foxpost
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12400F / 32GB DDR4 / RTX 3070 8GB / 512 SSD
- AKCIÓ! ASUS ROG G16 (2025) G615LR 16 - Ultra 9 275HX 32GB DDR5 1TB SSD RTX 5070Ti 12GB WIN11
- Apple iPhone XR 64GB, Kártyafüggetlen, 1 Év Garanciával
- Vadiúj garanciás Ryzen 7 5800X! Kèszleten!
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

![;]](http://cdn.rios.hu/dl/s/v1.gif)


