首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏大话swift

    macOS NSTableView鼠标右键菜单

    定义一个protocol ``` @objc protocol ContextMenu { @objc func tableView(_ tableView: NSTableView, menuForRows @objc func tableView(_ tableView: NSTableView, clickForRow row: Int) -> Void } ``` extension tableview 重写鼠标事件 ``` extension NSTableView { open override func menu(for event: NSEvent) -> NSMenu? { } } ``` 使用 ``` extension BTViewController: ContextMenu{ @objc func tableView(_ tableView: NSTableView return self.menus(forTables: tableView, item: bt) } @objc func tableView(_ tableView: NSTableView

    2.7K30发布于 2019-07-03
  • 来自专栏一“技”之长

    macOS开发之NSTableView的应用详解

    NSTableView的应用详解 一、引言     和iOS开发中的UITableView有很大差别,NSTableView并非是一个可滚动的列表视图,其是一个不可滚动、支持多列多行的原始列表视图。 若要使NSTableView支持滚动,通常会将其嵌套入NSScrollView控件中。 与UITableView类似,NSTableView的数据也是用过DataSource代理来提供,通过Delegate代理来进行表格视图的定制化。 首先NSTableView中的列是由NSTableColumn类描述的。一个列表可以有多个列。 需要注意,如果只实现这两个方法,则NSTableView会自动从列对象NSTableColume中取具体的行视图,通过dataCellForRow方法。

    5.8K21发布于 2018-08-15
  • 来自专栏君赏技术博客

    启动图第一篇教程

    @IBOutlet weak var tableView: NSTableView! @IBAction func saveAction(_ sender: Any) { } 我们注册一下我们的自定义Cell @IBOutlet weak var tableView: NSTableView self.tableView.reloadData() } //FIXME: - NSTableViewDataSource func numberOfRows(in tableView: NSTableView ) -> Int { return data.count } func tableView(_ tableView: NSTableView, viewFor tableColumn launchNameTextFiled.placeholderString = source.1 return cell } func tableView(_ tableView: NSTableView

    92720发布于 2018-08-31
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac 开发纪要-左侧菜单栏

    上面的图可以明显看出来是需要封装控件的,但是封装完毕是试图依次叠加还是使用 NSTableView。试图依次叠加不利于扩展,我们采用 NSTableView。 我们发现我们刚才创建的 NSTableView显示的背景颜色是白色的,我们可以关闭 NSScrollView的绘制背景颜色和设置 NSTableView的背景颜色为透明即可。 ? 我们关联 NSTableView的数据源。 ? @IBAction func didClickRow(_ sender: NSTableView) { } 我们给 NSTableView新增一个属性是否被选中。 我们绑定界面的元素 NSTableView到 SideMenuView 。 @IBOutlet weak var tableView: NSTableView!

    3.1K10发布于 2018-08-31
  • 来自专栏macOS 开发学习

    Mac OSX 开发基础控件学习之 NSOutlineView

    NSOutlineView-feature.png 在开发基于osx的Application的过程中,当我们需要显示一组列表结构的数据时,比较容易想到的控件是NSTableView;但如果你显示的数据有层级结构时 ,NSTableView就会面临一个问题:因为在osx中,NSTableView没有分组功能( sections) 因为在cocoa 中提供了另一个控件供满足我们的需求NSOutlineView它是继承自 NSTableView的子类,是Mac OSX Application常用的控件之一,与NSTableView相似,NSOutlineView也使用行和列来显示内容,但所不同的是NSOutlineView NSOutlineView效果,接下来,我们要添加Data model数据模型,并设置DataSource 和Delegate Data Model 数据模型 NSOutlineView的Data model 与NSTableView

    1.9K20发布于 2018-08-23
  • 来自专栏君赏技术博客

    一键替换Key Mac软件的制作教程第二篇

    mac开发中使用自定义NSTableCellView 我们实现NSTableView的代理,先设置3条测试的数据。 dirtyRect) } } 我们注册我们的cell //FIXME: - NSTableViewDataSource public func numberOfRows(in tableView: NSTableView ) -> Int { return 3 } public func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn cell.configNameLabel.stringValue = "这是测试的数据" cell.configCheckBox.state = 0 return cell } func tableView(_ tableView: NSTableView

    98820发布于 2018-08-31
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac-列表

    5C515420-600F-480D-B9FD-6F40380DA47B 关于 NSTableView的使用 接下来我们需要就是做出这个列表数据,我们可以使用 NSTableView来做出这个效果。 C99F8039-E33D-47D0-98EA-459D0AF3E336 解决 NSTableView的 Header在 Xib无法正常显示 有的时候我们发现 NSTableView在 Xib被隐藏了, 6E7EFC46-9753-4F4A-B497-1CE2C5FCBCD2 因为名字的长度是不固定的,我们就设置 NSTableView的第一个 Column的宽度随着 NSTableView的宽度变化。 我们关联一下 Xib上面的 NSTableView控件。 设置 NSTableView的 Header背景颜色。 第一种是图标加上文字并且是可以点击的 第二种是文字只做展示 第三种是两个按钮 我们设置 NSTableView的 Cell的高度为 83。

    3.8K10发布于 2018-08-31
  • 来自专栏大话swift

    重拾swift版本MVP

    = self } } extension MainMenuPresenter : NSTableViewDelegate { func tableView(_ tableView: NSTableView stringValue = "xxxxxxx" return tableViewCell } func tableView(_ tableView: NSTableView { return nil } func numberOfRows(in tableView: NSTableView) -> Int { return 3

    1K40发布于 2019-07-04
  • 来自专栏京东技术

    知识点 | 纯代码实现NSOutlineView的详细步骤

    NSTableView好像不太方便展示分组数据。 可以试试NSOutlineView。 NSOutlineView是NSTableView的子类,但是他比NSTableView多了分组的功能,使用层级的数据结构。 ? ? 哦!那我查查怎么使用。 半小时后…… ?

    2.3K40发布于 2019-05-05
  • 来自专栏macOS 开发学习

    一步一步,开始上手Mac 开发(一)

    MasterViewController后的界面 1.9 选中MasterViewController.xib,因为我们这个工程练习需要显示一些Bugs信息列表,所以需要一个table view,在Mac中,这个控件叫做NSTableView 在OSX中table view 控件是NSTableView,它类似iOS中的UITableView,不同的是在NSTableView的一行(row)中可以有很多列(column) 1.20 选中table table view 设置后运行效果 与iOS相似,NSTableView 也有数据源和代理这两个属性,现在我们需要将MasterViewController设置为table view 的数据源和代理(

    4.7K40发布于 2018-08-23
  • 来自专栏肘子的Swift记事本

    肘子的 Swift 周报 | Swift,超越苹果生态!

    在实际开发中,Edvinas Byla 意识到 LazyVGrid 的性能并不理想,且不能满足他对上下文菜单行为的特定需求,因此他决定采用 NSTableView 作为替代方案。 通过对 NSTableView 和 NSTableCellView 的精心定制,他不仅显著优化了滚动体验,还解决了上下文菜单相关的问题。

    77910编辑于 2024-04-11
  • 来自专栏君赏技术博客

    HQ移动20170317期周报

    自定义 NSTableView的 Cell mac开发中使用自定义NSTableCellView 4 . 设置 NSWindow 不允许用户改变大小 设置 ReSize 属性为 NO 5.

    70430发布于 2018-08-31
  • 来自专栏macOS 开发学习

    Mac开发跬步积累(三):被忽略的 NSTabViewController

    先设置NSTableView的样式为unspecified tabStyle = .unspecified 2.

    3K40发布于 2018-10-10
  • 来自专栏一“技”之长

    自己动手设计一款iOS自动构建发布工具 原

    NSTableView是一个很好选择,其使用方便,结合xib文件来编写cell,其开发效率也十分高。

    1K20发布于 2018-08-15
  • 来自专栏君赏技术博客

    一键替换Key Mac软件的制作教程第一篇

    我们放置一个NSTableView的控件�约束如下。 ? 我们放置NSView紧接着刚才表格的下面。 我们运行一下,看一下效果。 ? 此时我们的界面搭建完毕。

    1.1K10发布于 2018-08-31
  • 来自专栏肘子的Swift记事本

    Homebrew 5.0:并行加速、MCP 加持,与 Intel 的最后倒计时 | 肘子的 Swift 周报 #0111

    UI 层(特别是 NSTableView 与 delegate 模式)的重写过程尤为艰难,早期充满了并发属性标注,但随着理解加深,Swift 的优势逐渐显现。

    58110编辑于 2025-11-20
  • 来自专栏肘子的Swift记事本

    优化在 SwiftUI List 中显示大数据集的响应效率

    List 的效能 List 作为 SwiftUI 对 UITableView ( NSTableView )的封装,大多数情况下它的性能都比较令人满意。

    12.3K20编辑于 2022-07-28
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac-模板处理

    currentMenuIndex) } } private var currentMenuIndex:Int = 0 func changeTabeleViewState(row:Int, tableView:NSTableView

    7.8K30发布于 2018-09-07
  • 来自专栏TechBox

    一份走心的iOS开发规范

    delegate方法的命名有一些与众不同的格式: 【建议】以触发消息的对象名开头,省略类名前缀并且首字母小写: - (BOOL)tableView:(NSTableView *)tableView shouldSelectRow

    12.6K145发布于 2018-06-05
领券