Hallo!
Das Grundproblem, warum die Variable a nicht mit _T(a) nicht ein wxString - Objekt umgewandelt werden kann, ist, daß _T() ein Makro ist, d.h. es wird vor dem Compilieren vom Präprozessor ausgeführt. Der Präprozessor weiß aber weder was von der Variablen a noch von derem Inhalt, da dieser erst beim compilieren bzw. zur Laufzeit bekannt ist.
Um der Variablen str eine Ascii - Zeichenkette zuzuweisen gibt es mehrere Möglichkeiten.
1. Im Konstruktor (siehe obigen Beitrag)
2. Mit der Funktion FromAscii
char * a = "abcdefg";
wxString str;
str = wxString :: FromAscii (a);
siehe auch wxWidgets - Dokumentation!