Ich wollte mir die Handhabung von usebox ein wenig vereinfachen. Dazu habe ich die folgenden 2 Befehle definiert. Um immer dafür zu sorgen, dass der Boxname gleich dem Label der (pstricks-)Zeichnung ist, will ich den Namen der Box ohne Backslash eingeben und im Befehl \newsavebox hinzufügen (daher \#1). Das mag Latex aber wohl nicht. \textbackslash macht die Sache nicht besser. Wie füge ich den String richtig zusammen?

Code:
%Box anlegen und speichern
\newcommand{\defbx}[2]{\newsavebox{\#1}
\sbox{\#1}{#2}
}

%Box einfuegen
\newcommand{\usebx}[2]{
\begin{figure}
\usebox{\#2}
\label{fig:#2}
\caption{#1}
\end{figure}
}
Beispiel:

Code:
\defbx{test}{Hallo}
erzeugt den Fehler:
A box was supposed to be here