couleur du texte d'un textview
chaps31
Membre
Deuxième message du jour... :P
Un truc qui m'énerve depuis pas mal de temps et que je ne comprends pas : j'ai un textview dans un scrollview le tout à coté de nstextfield dans un nspanel façon "hud".
Tous mes nstextfield on un texte réglé en blanc, pas de pb, je fais pareil avec le textview et... le texte reste obstinément noir !!! C'est à devenir fou... :crackboom:-
Un truc qui m'énerve depuis pas mal de temps et que je ne comprends pas : j'ai un textview dans un scrollview le tout à coté de nstextfield dans un nspanel façon "hud".
Tous mes nstextfield on un texte réglé en blanc, pas de pb, je fais pareil avec le textview et... le texte reste obstinément noir !!! C'est à devenir fou... :crackboom:-
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Je bidouillais un truc sous IB, et là mon doigt ripe sur le trackpad de mon macbook pro unibody (pas pratique parfois...) et depuis... plus d'ascenceur pour parcourir ma tableview !!! J'ai vérifié pourtant les régalges du scrollview sont bon il doit les afficher !!!
Pour info j'ai une tabview qui contient mon scrollview qui contient ma tableview... Une idée de ce qui a pu se passer ??? Tout marche mais plus d'ascenceur je ne peux plus parcourir ma table !!!
SOS
Et en réglant le "Draw Background" du scroll view ?
C'est coché... Idem pour le drawbackground de mon autre pb... C'est la misère...
Celui d'une NSTextView dans un NSTextContainer (au format RTF).
Tu peux changer la couleur du texte d'une NSTextView en passant par le panneau des fontes (menu Font > Show Fonts).
- J'ai essayé d'utiliser le menu Font, dans la fenêtre la couleur était à jaune... Mais le texte de la textView apparaissait noir... Donc j'ai eu comme un doute de l'utilité de la manip... J'ai néanmoins mis blanc, ça n'a rien fait, ha si maintenant je ne peux plus rien taper, mon textview est devenu non sélectionnable... Pour la couleur dans l'inspecteur je peux changer la couleur mais hop en effet elle revient toute seule à son réglage initial... (noir)
- Pour mon ripage de doigt... Incompréhensible, si ça se trouve mon ripage n'a rien à voir, ma bidouille oui. Je voulais modifier dans xcode le label d'un des "onglets" de la tabview, donc je venais de créer un IBOutlet tabView relié dans IB avec la tabView en question (mon dérapage de doigt et de clic..). Mais ne trouvant pas comment faire et face au pb de la disparition des ascenceurs j'ai viré le lien et l'Outlet de Xcode, rien n'y fait pour le scrollview il est bien coché d'afficher les ascenceurs mais ceux-ci n'apparaissent plus...
IB est ensorcellé ou je deviens stupide ???
Merci... SOS :why?: :why?: :crackboom:- :crackboom:-
http://chaps31.free.fr/MainMenu.nib.zip
[EDIT] oui j'arrive à faire fonctionner ton HUD après avoir redimensionné le text view "Commentaires"
0ù ça se trouve NSZeroRect ?
Exact... phénomène lié au NSZeroRect ? Car pour moi là ça relève de la magie... Merci d'avoir réslu ce bug.
Par contre aujourd'hui je compile et.... à nouveau les ascenceurs ont disparu du scrollview contenant la tableview... L'autre jour ils y étaient...
Ils n'y sont plus puis ils y sont puis ils n'y sont plus... Et je ne change rien au NIB .... Mon macbook est ensorcelé ??? Une explication ? Là c'est surréaliste... :why?:
NSZeroRect c'est le rect d'origine nulle et de dimensions nulles. Cela permet d'initialiser certains rectangles. C'était donc une manière de dire que tu avais réduit les dimensions de ton rectangle de TextView à zéro, ce qui l'empêchait de réagir aux sollicitations de l'utilisateur.
Dans certains réglages, les ascenseurs ne sont présents que si cela est nécessaire, lorsque le texte ne peut être représenté en totalité dans la partie visible.
Sinon je traine toujours le problème du texte noir du textview que je n'arrive pas à passer en blanc... :crackboom:-
Sinon pour la couleur du texte dans le texview c'est étrange car la couleur du point d'insertio si je la change se modifie sans problème...
Au passage dans un nstextfield il y a un moyen de changer la couleur du point d'insertion ?
Autrement regarde si il y a quelque chose dans le code de TextEdit, il est fourni dans les exemples Developer
NB : pourquoi XIB plutôt que NIB ?
Depuis quelque temps, XCode propose un MainMenu.xib , qu'il compile ensuite en un fichier .nib qu'il place dans les ressources du projet. Je suppose que ton projet date un peu et que tu utilises un ancien fichier .nib, qui normalement doit fonctionner aussi, mais bon, c'est un ancien mode de fonctionnement.
- Pour la couleur du texte dans le textview seule solution qui fonctionne : j'ai rajouté dans l'awakefromNib de ma classe qui gère mon interface : Ca marche très bien, mais il y a définitivement un problème dans IB, si un codeur d'Apple masqué (Schlum ? Philippe49 ? AliGator ? :P ) passe ici il peut y jeter un oeil .
- Pour le scrollview : aucune solution j'ai regardé partout, ça semble un bug d'IB, 1 semaine que je reste bloqué là ... C'est la misère je vais me mettre à WinDev.... Non.. je déconne
Maudit ScrollView mon projet est à l'arrêt... Décidemment IB me pose bien des problèmes de fonctionnement, car comme je le disais j'ai résolu le pb de la couleur du texte dans le textview mais via xcode, la sélection de couleurs dans IB ne fonctionnant pas...
Mais revenons à mon problème de scrollview... une idée ? n'importe quoi un truc que je sorte de cette impasse ....
[glow=red,2,300]EDIT :[/glow] J'ai sélectionné le scroll vertical et ai coché la case pour l'obliger à s'afficher (enabled) il s'affiche je peux cliquer sur les flèches mais il ne défile pas !!!!!!!!!!!!!!!! :crackboom:- :crackboom:-
Quelqu'un te comprends enfin :brule:
- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex{
[aTableView reloadData];
}
et l'ascenseur devient efficace.
Il s'agit donc d'un problème de lecture du nombre de rows dans la data source.
Il doit falloir mettre l'initialisation de l'array de la data source relativement tôt dans le programme. (je l'aimis pour ma part dans awakeFromNib
Mes excuses de ne pas avoir localisé ton problème plus tôt (hier j'avais la tête dans des problèmes de localisation d'un robot) .
[EDIT] je regarde pour le problème du text view, bien que ta solution soit satisfaisante.
ce qu'IB ne sait pas faire, on le fait dans le code ...
Te connaissant un peu j'ai une idée sur ton choix...
Problème résolu en mettant reloadData dans le awakefromnib... C'est quand même étrange non ? Problème à creuser...
Sinon initialisation du tableau dans init.. Tu mettrais un bout de code stp En fait dans pas mal d'exemple je vois implémenté la méthode init dans les projet, chose que je ne fais jamais et dont je ne comprend pas l'utilité... ni le [super init] que je lis systématiquement, je sens une histoire de surcharge, notion que je n'ai jamais abordée.
Le cumul n'étant pas interdit ..
L'ordre dans lequel les méthodes sont appelées au lancement intervient lors de l'initialisation.
En mettant reloadData dans awakeFromNib, tu prends la main en forçant un nouveau rafraà®chissement complet de la table view. L'initialisation de la MSMutableArray dans la méthode init est antérieure à tous les appels awakeFromNib, et donc la table view possède surement toutes les informations de son data source au moment où elle le questionne.
-(id) init {
if(self=[super init]) {
NSDictionary * un=[NSDictionary dictionaryWithObjectsAndKeys:@Albert,@prenom,@Einstein,@nom,nil];
NSDictionary * deux=[NSDictionary dictionaryWithObjectsAndKeys:@Jean-Nepomucène,@prenom,@Lemercier,@nom,nil];
NSDictionary * trois=[NSDictionary dictionaryWithObjectsAndKeys:@Jean-Nepomucène,@prenom,@Lemercier,@nom,nil];
clients=[[NSMutableArray alloc] initWithObjects:un,deux,trois,nil];
}
return self;
}
Si ta classe hérite d'une autre classe, elle hérite en même temps des variables (et méthodes) de cette classe.
[super init] fait exécuter la méthode init de la classe-mère, et ainsi fait profiter des initialisations standards ou simples créations qu'elle contient.