• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

NSTextField setEditable XIB

sashs

James Grieve
Registriert
23.03.10
Beiträge
133
Hallo, wie es bei Programmen für Mac OS üblich ist, habe ich mir eine GUI mit dem Interface-Builder zurecht geklickt. In dieser GUI befindet sich ein NSTextField. Dieses wollte ich im Kontruktor des Controllers für die GUI nicht editierbar schalten. Allerdings funktioniert das nicht. Es scheint, dass die XIB-Datei erst nach der Instanzierung des Controllers geladen wird. Jetzt weiß ich allerdings nicht, wie ich dieses Textfeld auf setEditable:NO setzen soll. Es wäre nett, wenn mir da jemand einen Tipp geben könnte. Gruß Sascha
 
Hallo,

das ihr das alle nie lernt, dass ein kleines Beipsielprojekt das Problem viel besser verdeutlicht.

Meinst Du vielleicht das:

Code:
[textField setEnabled:NO];

Viele Grüße
 
Nein, ich meine schon
Code:
[textField setEditable:NO]
, wobei textField ein Outlet ist. Dieses führe ich in der init-Methode (Konstruktor) der Controller-Klasse zur GUI aus. Damit möchte ich das NSTextField in der GUI nicht editierbar machen. Aber wie schon oben beschrieben scheint, die XIB-Datei erst nach der init-Methode der Controller-Klasse geladen zu werden, da dieser Aufruf keine Wirkung zeigt.
das ihr das alle nie lernt, dass ein kleines Beipsielprojekt das Problem viel besser verdeutlicht.
Wenn du willst schreibe ich dir die init-Methode hier hin mit diesem einen Aufruf.
Code:
 -(id)init{    self = [super init];    if(self != nil){        [textField setEditable: NO];       } return self; }
Da ich allerdings nicht an meinem Rechner sitze, kann ich dir leider kein Beispielprojekt hier hochladen. Aber ich danke dir, dass du was andere machen, direkt auf mich beziehst. Formatierung möge man mir verzeihen. Hier ist Java-Script abgeschaltet, deshalb ist wie es aussieht Formatierung weg. Gruß Sascha
 
Hallo,

http://developer.apple.com/Mac/libr...SNibAwaking_Protocol/Reference/Reference.html

-(void)awakeFromNib
An awakeFromNib message is sent to each object loaded from the archive, but only if it can respond to the message, and only after all the objects in the archive have been loaded and initialized

Bei Deinem -init werden die GUI-Instanzen noch gar nicht erzeugt sein.
Im Prinzip lässt sich aber alles nur vermuten, da wir nicht sehen was Du machst.
Deshalb Beispielprojekt.

Aber ich danke dir, dass du was andere machen, direkt auf mich beziehst.
Du machst doch gerade das gleiche, wie die meisten Fragenden.
Kein kleines Beispielprojekt in dem Dein Vorgehen nachvollziehbar ist. ;)

Viele Grüße
 
Du machst doch gerade das gleiche, wie die meisten Fragenden.

Wie gesagt, nicht mein Rechner und auf nem Windows-Rechner sieht es schlecht aus mit Objective-C-Projekten und XIB-Dateien.

Aber du hast genau mein Problem getroffen, also hab ich es doch nicht so schlecht erklärt. ;-)

Danke dir.

Gruß

Sascha