Comment définissez-vous la taille de Nsview programmiquement par exemple la configuration de la taille dans la nib (de Mac OSX) fonctionne correctement, mais je veux le faire en code. P > p>
3 Réponses :
Utilisez la méthode -SetFase: ou -SetFrame: P>
Bonne réponse. La modification directe de la propriété de cadre semble ne pas fonctionner au moins dans Swift.
Lorsque vous appelez Self.frame, il renvoie les données dans le cadre et non un pointeur. Par conséquent, toute modification du résultat n'est pas reflétée dans la vue. Afin de modifier la vue, vous devez définir le nouveau cadre après avoir modifié:
- (void)awakeFromNib { NSRect f = self.frame; f.size.width = 1280; f.size.height = 800; self.frame = f; //... }
Merci beaucoup. J'avais perdu la volonté de vivre. Maintenant non seulement quelque chose a commencé à se produire, mais je découvre que c'est la mauvaise question - la réponse à laquelle est ci-dessous.
Pour configurer par programme la taille de l'application (c'est ce que je voulais faire), vous devez le faire: -
- (void)awakeFromNib { ... NSWindow* w = [self window]; NSRect f; f.size.width = 1280; f.size.height = 800; [w setFrame:f display:YES]; }