美文网首页macOS应用开发
第二节,macOS开发入门之NSTextField

第二节,macOS开发入门之NSTextField

作者: ggli | 来源:发表于2021-03-06 15:59 被阅读0次

    第二节,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 ];

    效果图:

    相关文章

      网友评论

        本文标题:第二节,macOS开发入门之NSTextField

        本文链接:https://www.haomeiwen.com/subject/luqsqltx.html