macOS应用开发

第二节,macOS开发入门之NSTextField

2021-03-06  本文已影响0人  ggli

第二节,macOS开发入门之NSTextField

在第一节中我们展示hello macOS我们使用的是NSTextField,类似于iOS中的UILabel。

那么我们今天详细介绍下NSTextField。

我们可以按住option键点击NSTextField打开官方文档查看哈。发现NSTextField与UITextField的使用还是非常相似的。

@interfaceNSTextField:NSControl

具体的方法以及属性可以直接看文档,就不一一拷贝解析。

我们直接上代码,使用下NSTextField一些基本使用。

NSTextField *textFld = [NSTextField labelWithString:@"Hello MacOS APP"];

  textFld.frame = CGRectMake((CGRectGetWidth(self.view.frame)-200)/2, CGRectGetHeight(self.view.frame)/2, 400, 200);

  [self.view addSubview:textFld];

  //字体大小

  textFld.font = [NSFont systemFontOfSize:40];

  //设置默认显示的提示字符串

  textFld.placeholderString = @"请输入你的密码";

  //设置默认显示的提示字符串 使用的带属性的字符串

  NSMutableAttributedString * attriString = [[NSMutableAttributedString alloc]initWithString:@"请输入你的密码"];

  [attriString addAttribute:NSForegroundColorAttributeName value:[NSColor redColor] range:NSMakeRange(5, 2)];

  textFld.placeholderAttributedString = attriString;

  //设置文本框背景颜色

  textFld.backgroundColor = [NSColor greenColor];

  //设置是否绘制背景

  textFld.drawsBackground = YES;

  //设置文字颜色

  textFld.textColor = [NSColor blueColor];

  //设置是否显示边框

  textFld.bordered = YES;

  //设置是否绘制贝塞尔风格的边框

  textFld.bezeled = YES;

  //设置是否可以编辑

  textFld.editable = YES;

  //设置文本框是否可以选中

  textFld.selectable = YES;

  //设置贝塞尔风格

  textFld.bezelStyle = NSTextFieldSquareBezel;

  //设置倾向布局宽度

  textFld.preferredMaxLayoutWidth = 100;

  //设置最大行数

  textFld.maximumNumberOfLines = 5;

  //设置断行模式

  [[textFld cell] setLineBreakMode:NSLineBreakByCharWrapping];

  //设置是否启用单行模式

  [[textFld cell]setUsesSingleLineMode:NO];

  //设置超出行数是否隐藏

  [[textFld cell] setTruncatesLastVisibleLine: YES ];

效果图:

上一篇下一篇

猜你喜欢

热点阅读