Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Drafting
  Text Makro

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO
Autor Thema:  Text Makro (928 mal gelesen)
Tobi79
Mitglied
Projektleiter / CAD-Administrator


Sehen Sie sich das Profil von Tobi79 an!   Senden Sie eine Private Message an Tobi79  Schreiben Sie einen Gästebucheintrag für Tobi79

Beiträge: 422
Registriert: 22.02.2002

my 1st Version: ME10V9.00
aktiv: (PTC) CoCreate Drafting 2007 mit DrawingManager
WUI

erstellt am: 12. Aug. 2003 17:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Tag Liebes Forum

Ich habe ein Makro zur editierung von Text in inaktiven Teilen erstellt. Das funktioniert auch wunderbar, allerdings nur dann, wenn das aktuelle Teil nicht im Massstab verändert ist. Kann mir jemand sagen woran das liegt?
Anbei der Makrotext und das Trace:

-------------------MAKRO---------------------------------------------

define et2

local p0
local teilenummer

inq_part current
let teilenummer (inq 302)

loop
  loop
  read no_catch 'Text anklicken / Aussteigen mit ESC' p0
  inq_elem p0 
  exit_if (inq 403 = text)
  display_no_wait "***Das war leider kein Text***" 
  wait 1
  end_loop
  trap_error
  edit_part p0
  wui_edit_text p0
exit_if (p0 = 0,0)
  edit_part ('[' +str (teilenummer) +']')

end_loop
end_define

---------------------------------------------------------------------


---------------------TRACE-------------------------------------------

PICK_VP_PNT 1 -332.933496453025,762.834775655352
INQ_ELEM P0 -332.933496453025,762.834775655352
EXIT_IF ( INQ 403 =
TEXT ) 1
TRAP_ERROR
EDIT_PART P0 -332.933496453025,762.834775655352
WUI_EDIT_TEXT P0 -332.933496453025,762.834775655352
EXIT_IF ( P0 -332.933496453025,762.834775655352 = 0,0 ) 0
EDIT_PART ( '[' + STR ( Teilenummer '~2' ) + ']' ) '[~2]'
END_LOOP
LOOP
READ NO_CATCH 'Text anklicken / Aussteigen mit ESC' P0 Tro
TRACE

---------------------------------------------------------------------


Ich weiss, ist nicht die sauberste Lösung (mit Ausstieg und so) aber es funzt. Vielen Dank im voraus, falls sich jemand die Mühe macht das anzuschauen.


Es grüsst Euch

------------------
Tobi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

H.annes
Mitglied
CAD-Pfriemler


Sehen Sie sich das Profil von H.annes an!   Senden Sie eine Private Message an H.annes  Schreiben Sie einen Gästebucheintrag für H.annes

Beiträge: 482
Registriert: 02.07.2001

ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx

erstellt am: 13. Aug. 2003 07:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Tobi79 10 Unities + Antwort hilfreich

Morgen Tobi,

das funktioniert deswegen nicht, weil - seit Einführung der Teilemaßstäbe - jeder Teil sein eigenes Koordinatensystem hat; d.h. wenn Du einen Punkt einliest & dann einen anderen Teil editierst, kann dieser Punkt ganz woanders sein.

Es gibt zwar irgendeine Funktion, um diese Koordinaten zwischen Teilen zu mappen - die hab ich aber vergessen (weil ich sie eh nie verwende)  .

Ich machs traditionsgemäß  so, daß ich an das gewählte Element ein Info anhänge & das Element dann über das Info identifiziere, etwa so:

Code:
INQ_ELEM P0
...
ADD_ELEM_INFO "DasistMeinText" GLOBAL TEXTS P0
EDIT_PART P0
INQ_SELECTED_ELEM TEXTS INFOS "DasistMeinText"
LET P0 (INQ 101)
CHANGE_GLOBAL_INFO "DasistMeinText" ""

Dann ist P0 wieder der Punkt auf dem Text im aktuellen Teil.
(quick, dirty & untested, wie immer  )

Gruß aus Österreich,
Hannes

------------------
undmiadanwosmadan undmiadanawosondasoisdeswosmadan undwosondasdamara

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz