我正在尝试创建一个自定义的按钮外观。
从我收集的信息来看,是NSButtonCell绘制的,所以实际上我应该改写它。
但问题是,我的CustomButton类有其他东西,如NSImage,mIsMouseOver等。目前绘图是在CustomButton类中完成的,但我想将其转移到单元格中。
问题是,是否可以从customButtonCell类访问customButton类中的图像,以便可以使用[image drawInRect:...]
向你致敬,韩
发布于 2010-12-09 20:47:12
单元格的drawWithFrame:(NSRect)frame inView:(NSView *)controlView方法包含对正在绘制的NSView的引用,您可以从中访问视图的属性(如图像)。
发布于 2010-12-09 17:48:34
通常的方法是将数据存储在NSCell子类中。基本单元格类甚至有一个-(Id)图像属性,因此,当查询图像时,您的按钮类应该调用[[self cell] image]。
实际上,由于您是NSButton的子类化,它包含了您需要的所有内容,只需覆盖单元格的绘制方法。如果你需要一个额外的属性-在单元格中定义它,在控件中包装它。
https://stackoverflow.com/questions/4396426
复制相似问题