Vytisknout stránku | Zavřít okno

Tabulka pomoci vla a potřeba vložit BLOK

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=18914
Datum vytištění: 06.čer.2025 v 22:13


Téma: Tabulka pomoci vla a potřeba vložit BLOK
Odeslal: chlebovsky
Předmět: Tabulka pomoci vla a potřeba vložit BLOK
Datum odeslání: 10.bře.2014 v 22:13
Zdravím.

Vytvářím v Lispu výpis prvků do tabulky a chtěl bych v prvním sloupečku mít značku (blok), ve druhém sloupečku mít počet kusů, a ve třetím sloupečku popis položky.

Samotnou tabulku vytvořím, počet řádků, sloupečků taky. Samotné texty 2,3 sloupeček doplním taky.

Ale problém mám s vložením samotného bloku toho prvku (blok zásuvky třeba) do prvního sloupečku

A teď k dotazům
a) lze vůbec to tabulky vkládat bloky ? A když tak jak toho docílím
b) dokážu nějak změnit šířky prvního, druhého a třetího sloupce ?

Nechce se mi totiž tu tabulku ručně kreslit pomocí čar, a tak bych chtěl využít přímo objekt table.

Moc prosím o pomoc, děkuju předem.

S pozdravem Martin.

Tady přikládám kód

      (vl-load-com)

      ;;; tvorim table
      (setq activeDocument (vla-get-activedocument (vlax-get-acad-object)))
      (setq mSpace(vla-get-modelspace ActiveDocument))

      ;;; point je definovany bod pomoci getpoint
      (setq pt (vlax-make-safearray vlax-vbDouble '(0 . 2)))
      (vlax-safearray-fill pt point)                                                            

      ;;; count je počet radku (polozek) co jsem vybral
      (setq myTable (vla-addtable mSpace pt (+ count 1) 3 0.5 3))

      ;;; definice hlavicky
      (vla-setcelltextheight myTable 0 0 0.4)
      (vla-settext myTable 0 0 "Seznam prvků")

      ;;; pocet radku a sloupecku
      (setq nRows(- (vla-get-rows myTable) 1))
      (setq nCols(- (vla-get-columns myTable) 1))
     
      ;;; definice sub hlavicky
      (vla-setCelltextHeight myTable 1 0 0.4)
      (vla-settext myTable 1 0 "Značka")
      (vla-setCellAlignment myTable 1 0 5)    

      (vla-setCelltextHeight myTable 1 1 0.4)
      (vla-settext myTable 1 1 "Poč.")
      (vla-setCellAlignment myTable 1 1 5)    

      (vla-setCelltextHeight myTable 1 2 0.4)
      (vla-settext myTable 1 2 "Popis")
      (vla-setCellAlignment myTable 1 2 4)    

      ;;; tady potrebuju nastavit sirky sloupecku, hlavně tretiho, protoze to pak roztahuje do vysky

      (setq i 0)

      (repeat count
        (setq ent (nth i vypis)) ;;; vypis =  je muj seznam vybranych prvku
        (setq name (cadr ent))
        (setq poc  (caddr ent))

        ;; tady potrebuju vlozit blok do tabulky (znacku zasuvky) v prvnim sloupecku
        ;;;(vla-setCelltextHeight myTable (+ i 2) 0 0.3)
        ;;;(vla-settext myTable (+ i 2) 0 poc)
        ;;;(vla-setCellAlignment myTable (+ i 2) 0 5)  
  

        (vla-setCelltextHeight myTable (+ i 2) 1 0.3)
        (vla-settext myTable (+ i 2) 1 poc)
        (vla-setCellAlignment myTable (+ i 2) 1 5)    

        (vla-setCelltextHeight myTable (+ i 2) 2 0.3)
        (vla-settext myTable (+ i 2) 2 name)
        (vla-setCellAlignment myTable (+ i 2) 2 4)    
   
        (setq i (1+ i))
      )



-------------
Ing. Martin Chlebovský

www.kde-je-auto.cz

GPS monitoring provozu vozidel a osob.

WebDeveloper.

Programátor aplikací pro Autocad a MS Office.

Tvorba WWW aplikací.

Modelování domů a staveb.&l



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 10.bře.2014 v 22:36
Na šířku sloupce (koukám do zdrojáku aplikace BLegend) je:

(vla-SetColumnWidth TblObj Col1 wid1)

Na vložení bloku je třeba nastavit typ:

(vla-SetCellType TblObj Row1 Col1 acBlockCell)



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world" rel="nofollow - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: chlebovsky
Datum odeslání: 11.bře.2014 v 20:51
Díky moc, obrovská pomoc.

Zadařilo se.


-------------
Ing. Martin Chlebovský

www.kde-je-auto.cz

GPS monitoring provozu vozidel a osob.

WebDeveloper.

Programátor aplikací pro Autocad a MS Office.

Tvorba WWW aplikací.

Modelování domů a staveb.&l



Vytisknout stránku | Zavřít okno