| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: dcl list_box (2239 mal gelesen)
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 25. Apr. 2006 09:27 <-- editieren / zitieren --> Unities abgeben:
hi! mit width kann ich die breite einer list_box einstellen. geht das auch dynamisch, daß sich die list_box an die breiteste zeile angleicht bzw. wie heißt der paramter um bei einer festen breite einen schieber für die horizontale zu erhalten? ciao georg Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 25. Apr. 2006 10:49 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Hallo Georg, wenn Du es gerne umständlich magst, dann könnte man doch aus dem LISP heraus die notwendige Breite abfragen, und dann mit LISP die DCL-Datei mit der entsprechenden Breite für die List_box schreiben. Ich selber habe sowas z.B. für die Anzeige von Attributen in edit_boxen gemacht, wenn die Anzahl der Attribute erst während des Programmablaufs aus einem ausgewählten Block hervorgeht. ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 25. Apr. 2006 10:58 <-- editieren / zitieren --> Unities abgeben:
hi joern, wäre eine möglichkeit, wenn ich allerdings eine vlx erstelle wird das wohl nicht mehr funktionieren? gibt es denn eine möglichkeit, wenn man schon die anzeige nicht dynamisch gestalten kann, einen schieber für die horizontale anzeigen zu lassen. ciao georg Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 25. Apr. 2006 11:40 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Hallo Georg, meiner Meinung nach gibt es da keinen Schieberegler. Und wenn Du später eine VLX-Datei erstellen willst, dann müßtest Du einen Temp-Pfad haben oder festlegen, in dem Du die temporär geschriebenen DCL-Datei speicherst. Beim Laden der DCL-Datei muß dann nur der komplette Pfadname anstatt nur des Dateinamens angegeben werden. ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
benwisch Mitglied Bautechniker, CAD-Konstrukteur
Beiträge: 375 Registriert: 01.02.2001
|
erstellt am: 25. Apr. 2006 13:12 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Hallo Georg, Jörn hat IMHO recht! Erzeuge aus Lisp heraus eine temporäre DCL-Datei und gebe dort deinen dynamischen Wert gleich mit. Ich persönlich arbeite fast nur noch so und habe bisher noch keine Nachteile dadurch gehabt. Im Gegenteil, man kann so auch schöne Funktionen schreiben, die gleich einen Dialog mitbringen, muß mir also um DCL keine weiteren Gedanken machen. Mein Freeware Programm BW_View arbeitet genauso und ermittelt das Seitenverhältnis des aktiven Ansichtsfenster (also auch aus VLX). Auf unserer Tipps-Seite habe ich was dazu geschrieben -> *Klick* Vielleicht ist das was für dich... Greets Rolf
------------------ CADmaro.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 25. Apr. 2006 14:04 <-- editieren / zitieren --> Unities abgeben:
hi rolf! super technik, das ist die lösung für mein problem und dazu gleich die umsetzung in code wie auch jörn es vorgeschlagen hat. besser gehts nicht. gibt es eine formel (width = anzahl strings x konstante) oder muß ich die breite ungefähr abschätzen? ich hätte noch eine frage zur formatierung: der list_box übergebe ich eine liste aus koordinaten mit punktnummern usw. '("ASDF 123.54 456.58 500.125" ....) um die einzelnen spalten ausrichten zu können hab' ich zw. die teilstrings mal tabs eingebaut. (STRCAT "ASDF" "\t" ....) leider erscheinen mir in der box aber anstelle der tabs nur sonderzeichen (im gegensatz zu z.b. alert; tabs werden hier übernommen). muß ich mit leerzeichen auffüllen oder gibt es evtl. doch eine andere lösung. ciao georg [Diese Nachricht wurde von gmk am 25. Apr. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 25. Apr. 2006 14:47 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Hallo Georg, TAB's kannst Du in LIST_Boxen nicht verwenden, da mußt Du schon mit Leerzeichen auffüllen (bin ich jedenfalls ganz fest von überzeugt). Um das zu umgehen könntest Du aber doch, wenn z.B. Die Punktnummer für bestimmt Auswahlen das Kriterium sind, nur die Punktnummern in der Listbox darstellen, und sobald eine Punktnummer in der List_Box ausgewählt ist, werden die zugehörigen Koordinaten in Texten daneben dargestellt. Wenn Du Dich in VBA ein bißchen auskennst, dann könntest Du auch LISP und VBA kombinieren, imdem Du aus dem LISP-Programm eine VBA-Routine aufrufst, die Dir dann mit den VBA-Möglichkeiten die Koordinatenliste mit einem Listenansicht-Steuerelement (ListView) darstellst. Dort hast Du dann die Möglichkeit, Spalten zu erzeugen. Die Datenübergabe habe ich über Dictionaries gelöst. Als Beispiel habe ich eine Bilddatei angehängt (ist zwar keine Koordinatenliste, aber vergleichbar) ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 25. Apr. 2006 14:51 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Hallo Jörn, da muss ich widersprechen. Man muss die Tabs nur auch in der DCL mit TABSTOPS=5 10 15; definieren. Ist das nicht geschehen, weiß die Listbox nichts mit \t anzufangen. Grüße Holger
------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 25. Apr. 2006 14:55 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
Zitat: Original erstellt von joern bosse: ...Wenn Du Dich in VBA ein bißchen auskennst, dann könntest Du auch LISP und VBA kombinieren, imdem Du aus dem LISP-Programm eine VBA-Routine aufrufst, die Dir dann mit den VBA-Möglichkeiten die Koordinatenliste mit einem Listenansicht-Steuerelement (ListView) darstellst. Dort hast Du dann die Möglichkeit, Spalten zu erzeugen. Die Datenübergabe habe ich über Dictionaries gelöst. ...
Der Ansatz ist Klasse. Ich habe schon oft überlegt, wie man das ganze gut miteinander verbinden kann. Ich habe ein wenig mit ActiveX-Steuerelementen umhergemacht und dann eben über die Eigenschaften/Methoden versucht was sinnvolles zu basteln - aber zufrieden war ich damit nicht. Der Weg über die Dictionaries, die sowohl seitens VB als auch LISP zur Verfügung stehen, lässt sich sicher leicht was machen. Wie gesagt -> gute Lösung! Grüße Holger ------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 25. Apr. 2006 15:05 <-- editieren / zitieren --> Unities abgeben:
|
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 25. Apr. 2006 15:06 <-- editieren / zitieren --> Unities abgeben: Nur für gmk
|