Baumstruktur

Started by OPLisp, October 02, 2013, 08:31:42 AM

Previous topic - Next topic

OPLisp

Hallo,

bei einer Baumstruktur innerhalb eines nicht modalen Dialogs
setze ich bei verschiedenen aktuell gesetzten Zeichnungen, die
Zeichnungsnamen als Parent Elemente. Die Lisp Datei  ist in jeder dwg
geladen.

(setq var1 (dcl_Tree_AddParent Programm_frmMain_tredocu lytnam 0 -1 1))

Die verschiedenen Handle's (var1) kann ich nicht global in einer Liste speichern.
Um die Zeichnungsnamen wieder abfragen zu können (Ok-Button) versuche ich folgendes:

(setq treecoun (dcl_Tree_GetCount Programm_frmMain_tredocu))
(setq c 0)
(while (< c treecoun)   
  (setq idx (dcl_Tree_GetItemHandle Programm_frmMain_tredocu (itoa c)))
  (setq lbl (dcl_Tree_GetItemLabel Programm_frmMain_tredocu idx)
  (setq c (1+ c))
)

Ich bekomme aber schon die Handle's nicht.

(dcl_Tree_GetItemHandle Programm_frmMain_tredocu strItem [als String])

Was ist hier mit strItem gemeint.

Gruss

Peter2

Die Funktion selbst ist mir nicht bekannt, aber die Logik der Aufrufe schon. Diese werden dir in der Hilfe bzw. im Browser immer als Mischung zwischen konkreten Aufrufen / Befehlen und Mustertexten und Hinweisen übergeben:

Code (autolisp) Select
(dcl_Tree_GetItemHandle Programm_frmMain_tredocu strItem [als String])
heisst im theoretischen
Code (autolisp) Select
(dcl_Tree_GetItemHandle -> das ist die Funktion (irgendeinen Handle übernehmen)
Programm_frmMain_tredocu -> der Name deines Steuerelements (eine Tree-Geschichte)
strItem -> hier musst du als String das übergeben, was du auslesen willst
[als String] -> das ist nochmals der Hinweis zum vorigen Parameter)

und im fiktiven Beispiel
Code (autolisp) Select
(dcl_Tree_GetItemHandle Programm_frmMain_tredocu "MeineItemBezeichnung")

Peter
ODCL 8.1.... German, AutoCAD 2017 - 2018, Win 7 x64, Win 10

Fred Tomke

Hi, ich verstecke die Kennungen immer im Key (strItem), der ja als String alles sein kann: Schlüsselnummern, AutoCAD-Objekt-Handles usw.. Ich bin mir nicht ganz sicher, aber auch von geöffneten Zeichnungen kann ich mir ein Handle abfragen. Dieser als String konvertiert sollte sich als Adresse auch im Key verstecken lassen.

BTW, im Key können auch Sonderzeichen verwendet werden. So etwas wie # oder * macht sich immer gut, um verschiedene Gruppen voneinander unterscheiden zu können.

VG, Fred
Fred Tomke
Dipl.-Ing. (FH) Landespflege

[ landscaper - landscape developer - digital landscape and urban design]