Пользовательские полосы прокрутки Mac с какао

Как я создал бы пользовательские полосы прокрутки с какао?

5
задан nanochrome 28 December 2009 в 04:43
поделиться

3 ответа

Не изобретай слишком много колеса, если не нужно. Если Вы просто хотите настроить внешний вид полосы прокрутки, может быть проще просто подкласс NSScroller и переопределить различные методы draw.

Это непроверенный код, но он должен продемонстрировать, что Вам нужно будет сделать, чтобы настроить внешний вид ручки, если у Вас есть своя собственная картинка MyKnob. png.


@interface MyScroller : NSScroller
{
    NSImage *knobImage;
}
@end




@implementation MyScroller

- (void) dealloc
{
    [knobImage release];
    [super dealloc];
}

- (id) initWithFrame:(NSRect) frame
{
    self = [super initWithFrame:frame];
    if (!self) return nil;

    knobImage = [[NSImage imageNamed:@"MyKnob.png"] retain];

    return self;
}

- (void) drawKnob
{
    // Work out where exactly to draw the knob
    NSPoint p = NSMakePoint(0.0, 0.0);

    [knobImage drawAtPoint:p fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1.0];
}

@end

7
ответ дан 14 December 2019 в 08:52
поделиться

Фантастический BWToolkit http://www.brandonwalkin.com/bwtoolkit/ имеет свою собственную реализацию Scroll View с другим видом. Исходные тексты расскажут, как это делается.

1
ответ дан 14 December 2019 в 08:52
поделиться

Хорошее начало - взглянуть на эту статью Аарона Хиллегасса. link text

Daryl

-1
ответ дан 14 December 2019 в 08:52
поделиться