修改NSScrollView滚动条的颜色
修改NSScrollView滚动条的颜色
项目中需要修改滚动条的颜色,查阅自己资料,自己总结,可以按照如下方式实现:
首先自定义滚动条,CustomScroller.h文件
#import <Cocoa/Cocoa.h>@interface CustomScroller : NSScroller@end
CustomScroller.m文件
#import "CustomScroller.h"@implementation CustomScroller
- (void)drawKnob {[super drawKnob];NSRect knobRect = NSInsetRect([self rectForPart:NSScrollerKnob], 3, 0);NSBezierPath *bezierPath = [NSBezierPath bezierPathWithRoundedRect:knobRect xRadius:3 yRadius:3];[[NSColor redColor] set];[bezierPath fill];
}
@end
经过上述步骤,项目中使用Scroller
tableContainerView.verticalScroller = [[CustomScroller alloc] init];
最终颜色是变了,但是,滚动条不消失。
最终引用RFOverlayScrollView实现,但是它这个不能修改颜色,因此将上述- (void)drawKnob
加入RFOverlayScroller类中即可实现修改滚动条颜色功能。细节如颜色、圆角、宽度等可根据个人需要调整,总体思路就是这样
以下是我想提交到Stack Overflow网站的回答,可惜由于以前回答不认真,账号被封,提交不了,索性提交给咱们CSDN用吧。
I need to set scroller color with red, I achieved it by follow:
- write a subclass of NSScroller
- override drawKnob
-(void)drawKnob {
[super drawKnob];NSRect knobRect = NSInsetRect([self rectForPart:NSScrollerKnob], 3, 0);
NSBezierPath *bezierPath = [NSBezierPath bezierPathWithRoundedRect:knobRect xRadius:3 yRadius:3];
[[NSColor redColor] set];
[bezierPath fill];
}
But I found scroller will never disappear, finally I used RFOverlayScrollView and add these code to class of RFOverlayScroller resolved it finally, hope it is helpful for you!
修改NSScrollView滚动条的颜色相关推荐
- VC修改IE滚动条宽度
VC下修改IE滚动条宽度,修改滚动条颜色是一个很简单的问题.但是IE的滚动条的宽度则是一件麻烦事,可能很多人遇到过这个问题.通过我一段时间的研究发现,IE浏览器的滚动条宽度是读取系统的滚动条默认宽度创 ...
- 关于HTML中的滚动条/去掉滚动条 设置颜色
1.xhtml下滚动条的颜色问题 在原来的html的时候,我们可以这样定义整个页面的滚动条: body{ scrollbar-3dlight-color:#D4D0C8; /*- 最外左 -*/ ...
- Vue项目修改浏览器滚动条样式
Vue+Element组件修改浏览器滚动条样式 前言:在Vue项目中会有使用到滚动条的情况,但是会遇到原生滚动条的样式不满足UI设计,因此需要改变滚动条的样式,下面使用两种方式来修改滚动条的样式,以V ...
- 修改浏览器滚动条样式(兼容IE)
通常为了满足页面整体的风格的情况下,需要修改滚动条的颜色,各大视频网站都是以添加自定义滚动条的方式来满足,其实也可以理解,毕竟好像就只要添加一两个而已.如果是做管理系统或者其它需要多处修改浏览器滚动条 ...
- css 修改浏览器滚动条样式(火狐Firefox,谷歌google)
一.修改谷歌google: 修改样式: 1.全局修改,所有滚动条生效: ::-webkit-scrollbar{width:6px;height:6px; background-color: #000 ...
- android 动态修改 selector,Android Selector 按下修改背景和文本颜色的实现代码
1,selector 按下修改背景和文本颜色 [1]点击改变字体颜色 - android:state_pressed(按压状态) [2]selector状态选择器(bg_btn_two (存放 res ...
- iOS 修改navigationController返回按钮颜色和文字
引言 在iOS开发过程中,NavigetionController(导航栏)算是比较常用的一种控件,而系统自带的样式有时候往往不是我们所需要的,这时候就要求我们必须自定义或修改一下. 修改返回键的标题 ...
- Python的IDE之PyCharm:PyCharm的使用技巧图文教程(修改Pycharm默认风格颜色、编辑器内代码注释区域的颜色、编辑器内的Python Interpreter等)之详细攻略
Python的IDE之PyCharm:PyCharm的使用技巧图文教程(修改Pycharm默认风格颜色.编辑器内代码注释区域的颜色.编辑器内的Python Interpreter等)之详细攻略 目录 ...
- ubuntu16.04 xfce4的鼠标主题设置为oxygen-red、修改文件夹背景颜色、两处系统字体设置、右键菜单添加压缩解压选项
安装 oxygen-cursor-theme oxygen-cursor-theme-extra 然后 设置=>鼠标和触摸板 如果是自定义鼠标主题,那么把主题文件解压后拷贝到: /usr/sha ...
最新文章
- R语言ggplot2可视化使用guide_axis函数避免X轴标签互相重叠(Overlapping)、Dodge Overlapping X-axis Text with guide_axis()
- 大数据之Spark集群安装及简单使用
- Java Web学习总结(19)——web.xml配置详解
- 经典面试题:有序矩阵的快速查找
- 开源的全面胜利背后,那些被遗忘的人性问题
- [转载] python 中 setattr() 函数 和 getarrr() 函数
- maven 多环境打包发布的两种方式
- 【深度学习】之Caffe的solver文件配置(转载自csdn)
- Windows Server 2008 使用蓝牙的问题
- python调用大漠插件、检测么_Python调用大漠插件
- java实现康威生命游戏
- UC3842好坏的判断方法
- 在Vista中用鼠标激活Flip 3D
- 计算机病毒如何彻底去除,电脑中病毒最彻底的清除方法 彻底清理删除电脑病毒的几种简单方法...
- 【NFC】手机手环模拟门禁卡
- 估算活动持续时间-规划管理
- 相机ISO是什么 ISO是什么意思?
- 北大青鸟资源管理系统
- 网络安全绝地求生-面试题
- 使用nvm管理node
热门文章
- Android 11.0 12.0Camera2 静音时拍照去掉快门声音
- 基于51单片机的高速汽车列车汽车速度测量及报警装置proteus仿真原理图PCB
- 名字转换(java)
- SAP Workflow 工作流开发步骤总结
- RuntimeError: Couldn‘t install gfpgan.
- iOS 项目couldn't load project
- mongodb java查询_java操作mongoDB查询的实例详解
- android 去指纹设置,android调用系统指纹设置页面录入指纹
- 鲁大师赴港上市,周鸿祎的另一支“奇兵”,暗指智能硬件?
- 抖音斜体加粗昵称生成HTML源码