mac OS开发 线程/定时器/控件隐藏与不使能/关闭窗口与退出app

来源:互联网 发布:php一键安装环境linux 编辑:程序博客网 时间:2024/06/07 19:36

1 新建线程:

  方法1:使用对象方法  //创建一个线程,第一个参数是请求的操作,第二个参数是操作方法的参数  NSThread *thread=[[NSThread alloc]initWithTarget:self selector:@selector(loadImage) object:nil];
  //启动一个线程,注意启动一个线程并非就一定立即执行,而是处于就绪状态,当系统调度时才真正执行   [thread start];       方法2:使用类方法
  //调用完毕后,会马上创建并开启新线程     [NSThread detachNewThreadSelector:@selector(loadImage) toTarget:self withObject:nil];


2 获取线程

 获取当前线程:

 NSThread *current = [NSThread currentThread];  

 获取主线程

 NSThread *main = [NSThread mainThread]; 

3 定时器的新建与移除

新建定时器:

 timer = [NSTimertimerWithTimeInterval:0.1f

                                 target:self

                                selector:@selector(updateProgress:)//定时器每隔0.1s需要执行的函数

                                userInfo:nil

                                 repeats:YES];

    [[NSRunLoop mainRunLoop] addTimer:timerforMode:NSRunLoopCommonModes]

移除定时器:

 [timer invalidate]; // 将定时器从运行循环中移除,

 timer = nil

4 控件隐藏与不使能

隐藏imageview/label/button balabala

  self.CurrentVerNumLabel.hidden=true;//隐藏label

  self.ProgressLabel.hidden=false;//显示label

关于button

self.buttonclick.hidden=true;//隐藏button

[_buttonclick setEnabled:NO];//不使能button


5 关闭窗口与退出app

关闭窗口

[self.windowclose];//关闭error提示窗口

退出app

[[NSApplicationsharedApplication] terminate:nil];//退出app