2010-09-01 9 views
2

À l'heure actuelle, lorsque je place une image sur un bouton et qu'elle est sans bordure et que j'essaie de cliquer dessus, elle affiche toujours une partie rectangulaire en surbrillance avec l'image, dimension du bouton cliqué.Surligner uniquement l'image sur le bouton quand on clique sur

Ma condition est la suivante: je veux mettre en évidence seulement l'image par-dessus, pas toute la partie rectangulaire. Quelqu'un peut-il me suggérer une certaine logique pour l'implémenter?

Répondre

7

Dans IB, Attribut volet: Type de jeu momentanés Change.

2

Différents types de boutons sont mis en évidence différemment.

Je pense que cela est probablement « assez bon » pour ce que vous essayez de faire:

  • glisser un bouton de dégradé de la palette IB
  • Commande 1 pour les attributs voir
  • untick " Bordé »
  • sélectionnez votre image dans le « menu contextuel de l'image »

Cela vous donne une image seule bouton cliquable qui sera fortement seulement l'image elle-même quand on clique dessus. Vous pouvez également fournir une "image alternative" pour l'état cliqué, mais je ne pense pas que cela sera nécessaire.

Si ce n'est pas tout à fait ce que vous étiez après, vous devez créer un lien IBOutlet à la NSButtonCell et de l'utilisation:

- (void)setHighlightsBy:(NSInteger)aType 

pour déterminer la méthode mettant en lumière utilisée.

Documentation complète à:

http://developer.apple.com/mac/library/documentation/Cocoa/Reference/ApplicationKit/Classes/NSButtonCell_Class/Reference/Reference.html#//apple_ref/occ/instm/NSButtonCell/setHighlightsBy:

J'espère que cette aide.

Meilleures salutations,

Frank

+0

merci pour votre aide :) Cependant, j'ai découvert une méthode très simple pour le faire. Vous pouvez le vérifier dans ma réponse! – Devarshi

Questions connexes