如何编辑焦点文本字段? (斯威夫特,macOS)

时间:2017-01-06 10:05:05

标签: swift macos

我试图通过Swift(新手)使用macOS(而不是iOS)做一点实用工具。

我想这个实用程序会 由其他应用程序触发的命令行工具 菜单栏应用程序。

我实现了我想要的功能, 但我不知道如何编辑重点文本字段。

e.g。从文本编辑器中获取文本(原子,升华,......当此应用程序被触发时。)并对该文本进行一些更改并粘贴回文本编辑器。

我想让这个应用程序在系统范围内运行,

我想知道如何实现以下内容

  
      
  1. 从当前有效/有焦点的文字字段中获取文字。
  2.   
  3. 删除当前有效/有焦点的文字字段上的文字。
  4.   
  5. 将文本粘贴到当前有效/有焦点的文本字段。   (文本表示光标前只有一个单词或一行)
  6.   

我正在尝试使用命令行工具和键盘事件(CGEvent),这似乎不是一个好主意。

请帮忙!

2 个答案:

答案 0 :(得分:0)

  1. 我认为您需要实施// Code goes here $(function(){ var distance = $('.fixed').offset().top; $(window).on("scroll", function() { if ( $(window).scrollTop() >= distance - 85 ) { $("body").css("overflow","hidden"); $(".table-responsive").css("overflow","auto"); } else { } }); $(".table-responsive").on("scroll", function() { if($(this).scrollTop() === 0) { $("body").css("overflow","auto"); $(".table-responsive").css("overflow","hidden"); } }); });,如docs here中所述。

    相关部分(尽管您需要全部阅读)是here部分"向服务发送数据"或者"从服务接收数据" (它是使用粘贴板完成的。)

  2. 作为替代解决方案(可能更好),您应该考虑将应用打包为共享应用扩展程序(请参阅here

答案 1 :(得分:0)

查看ApplicationServices framework中的macOS辅助功能。具体来说,这些课程包括" AX"前缀(这些是可访问性的)。它不是最漂亮的东西(特别是在Swift中),但你可以用它实现你想要的东西。