Ú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
- OLED TV topic
- Samsung kuponkunyeráló
- World of Tanks - MMO
- Kormányok / autós szimulátorok topikja
- Milyen notebookot vegyek?
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen TV-t vegyek?
- Apple MacBook
- Kicsinálja az S26 Ultra a fóliagyártókat
- gban: Ingyen kellene, de tegnapra
- További aktív témák...
- Dell Precision 7550,15.6,FHD,i7-10850H,16GB DDR4,256GB SSD,Quadro T2000 4GB VGA,WIN11,LTE
- iPhone 15 Pro Max 256GB Natural Titanium Apple Store vásárlás, 100% akku!
- Újszerű Lenovo 15,6"FullHD,10.gen.Core i5(8x3,6Ghz)Intel UHD VGA,8-40GB/256-512SSD,jó akku
- Gamer PC-Számítógép! Csere-Beszámítás! R7 5700 / RTX 2080Ti 11GB / 16GB DDR4 / 1TB SSD!
- Xiaomi 12 256GB, Kártyafüggetlen, 1 Év Garanciával
- LG 25GR75FG - E-Sport Monitor - FHD 360Hz 1ms - NVIDIA Reflex + G-sync - AMD FreeSync - HDR 400
- í kilenc! AKCIÓS PRECÍZIÓS KÉSZÜLÉK! 7560 i9-11950H 64GB RAM 1TB SSD Nvidia RTX A3000 6GB 1 év gar
- Dell Latitude 5440 - i7-1365U, 16GB RAM, SSD, jó akku számla, garancia
- Lenovo L13 Core I3-10110U / 4GB DDR4 / LAPTOP 2
- Apple iPhone 12 Pro / 128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

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

