粉丝6609获赞3311



大家好,这期视频记录一下我刚刚修复 codex 电脑操控失灵的问题。问题表现是 codex 设置里的电脑操控显示 computer use 插件不可用,插件市场里搜索 computer use 也搜不到,更奇怪的是,明明之前能控制窗口截图,点击突然就失效了。 在修复前,我们将模型的智能程度调到最高。在对话框输入这段文字,我们可以先打开查看一下这段网址, 可以看到里面的修复步骤, 然后回到 codex, 点击回车,我们只需耐心等待它自动修复完即可。 好的模型提示,修复好了,让我们重启一下软件, 重启完后点开设置,点击设置里的电脑操控,可以看到已经成功修复。如果大家有遇到什么问题或者需要远程帮助,可以私信联系我。

搭建微信和 opencloud 连接,首先打开微信,从设置到插件,我们能看到一个微信 cloud, 然后点击进去,点击详情能看到一个安装指令,把这个指令复制下来, 在电脑上输入指令,安装微信插件。本地已搭建欧拉玛加迦玛四大模型, 安装完会弹出一个二维码,如显示不正确,可浏览器打开二维码链接,然后再重新打开微信,打开微信,设置到插件的扫一扫,扫描这个二维码, 微信就会弹出微信 club 的 聊天窗口,接下来我们来测试一下, 还有很多需要探索。

codex 刚刚又来了一波大更新,这五个功能是真的在把 ai 接管电脑干活往更深处推。第一,锁屏也能继续用 mac 锁屏之后, codex 还能继续工作,配合手机远程操作,人在外面也能看进度改方向。第二, app shots, 双击 mac 的 command 键,就能把当前窗口直接拍给 codex, 把可用文字塞进对话上下文。第三,桌面版 go 正式上线,你给 codex 一个目标,它会围绕结果持续推进,特别适合大项目跨几天慢慢跑。 第四,插件团队共享,企业用户自定义好的插件可以在团队之间附用,不用每个人重复配置。第五,高级标注模式, 用内置浏览器看页面时可以拖拽元素批量打标注和评论,前端反馈更精准。说白了, codex 这次不是在堆功能,而是在解决真实使用痛点。 上下文怎么进来,任务怎么跑久,团队怎么附用,页面怎么改准。如果你还把 codex 当成命令行写代码工具,那可能要重新认识它了。

好,大家好,咱们今天来讲第二课,那么第二课咱们主要讲三个命令,输出,调试文本,调试输出还有信息框。那么这三个命令呢?其实主要咱们讲的是后两个,前面咱们第一个,咱们一笔带过。 好,我新建一个项目, windows 窗口程序,然后呢新建一个 windows 窗口程序刚进来以后,咱们是在这里的,是在这个窗口的设计页面,咱们呢对着这个窗口双击 好,进来了就进到他的代码代码编辑页面了,那么他自动创建了一个启动窗口的子程序,启动窗口创建完毕,这个子程序,这个子程序不要改啊,改了以后你的程序启动可能会出现错误, 包括以后它生成的所有事件类的子程序都不能改啊。好,那么这是咱们的这个启动窗口的子程序,首先咱们来看输出调试文本,好,我这里先把咱们要讲的先写上 调试文本,对吧?然后还有一个是调试输出, 还有一个是信息框,这三个命令都主要是用来展示一些信息的。好,那么这个绿字就是咱们的注视啊, 注是什么意思呢?就是这一行不作为代码运行,就是它只是用来提示我们编写的时候我们需要做什么,哎,比如说我这里,哎,我这注是一个,我这里少一行代码,对吧? 好,那么这就是提示我们这里,我,我需要再再补一行代码啊,当然了,肯定不能这么写,但,但是现在我没有别的可提示的,所以我只能这样啊, 那么我这里写上记上,咱们要讲这三个,对吧?那么也可以呢,用 ctrl 加 k 去注视,取消注视是 ctrl 加 m, 哎,这样我就取消了。 ctrl 加 k, 我 就注视了。那取消注视也可以把前面这个单引号删掉,也是取消好,来看我们的输出调试文本。 好,呃,注视和取消注视的快捷键,我给大家写一下。 注视是 ctrl 加 k。 好, 这是注视的快捷键,那么取消注视 好,取消注视它的快捷键是 ctrl 加 m。 好, 那么我把这一行给它注视掉,变成绿字,要不然一会我这样的话,它就该给我报错了。 好,那接下来咱们讲命令输出调试文本, 那给它写上,比如说,嗯,大家好,我是山兔,对吧?当然也可以再输出一个, 输出什么呢?嗯, hello world, 对 吧?主流编程一般开第一课就会给大家讲这个 hello world, 那因为咱们是中文编程,所以咱们输出一个中文好,运行好,大家看到了第一行,大家好,我是山兔,在左下角。这啊,左下角,看我鼠标指的这个地方 啊,大家好,我是山兔,然后这 hello world 的 这两行就是咱们刚才输出的,第一行是咱们这个第二行是 hello world 的。 好, 那么这是输出调试文本,就这么用。嗯,就讲到这两句话讲完就算了,因为以后不用了。啊,我这里没把这注视,没把这个调试停止啊,停止调试你才能编辑你的这个代码啊。 好,停止,但是,呃,主流编程呢,其实是不影响你们,就是你不停止调试,它也可以编写。呃,咱们一元现在呃,情况不一样,特殊情况特殊对待吧。你停止以后,然后我们把它注视掉。 好,呃,这是输出调试文本,下一个调试输出 调试输出呢?也可以这样。哇,啊,大家好,对吧?然后再调试输出, 好,嗯, helloworld, 我 不写了,我现现在输出一个数字吧,输出一个一啊,也是可以输出的,都是正常的运行, 当然这些功能输出调试文本都有啊,一会输出调试文本不能执行哪个呢?我给大家演示一下啊。哎,这个大家好,一,这都没问题 啊,那么输出调试文本不能输出什么样的啊?来我这里新建一个数组变量, 不知道数组变量是什么,以后慢慢讲啊,因为有一些零基础的可能不知道什么是数组,咱们以后面慢慢讲,大家知道就是输出调试文本, 那我把上面这两行注视掉啊,防止他干扰我们 运行啊。这个报错是这里。嗯啊,那么我这里还没有给赋值呢, 哎, 父祖, 呃,孙悟空吧。哎。猪八戒,逗号,沙和尚,然后再来个逗号,唐僧, 好,那么这是咱们的一个数组型变量运行,看到了吧?不能将文本型数数组转换成通用型数据,对吧?它是不支持这样的,但是同样的写法,调试输出, 对吧?数组一样的,我们用调试输出就可以 好了啊。看到下边展示了数组四个元素,这是第一个纸带,它是一个数组,第二个纸带,它有四个元素。如果你这这里再多来一个,哎,哎呦, 我先取消等号,再多来一个白龙马,对吧?再运行, 哎,现在是五个元素,并且后边多了一个白龙马,对吧?啊,那么这是调试输出和输出调试文本有什么不同啊?其实他不能输出的还有很多,咱们这里只是做一个演示,做其中一个演示, 那么大家知道就是输出调试文本有局限性就行了,咱们以后只用调试输出。好,然后把这个终止掉,终止掉以后呢?呃,调试输出这里有一个没讲啊, 还可以这样输出,看了吧?比如说一逗号、二逗号,三逗号啊,这还少了一个四运行, 看到了吧?它下面输出一二三四,但是它是用竖线分割的,我们可以给它传入多个参数, 用逗号分割就可以,那么他在给我们输出的时候是用竖线分割。好,那咱们咱们也可以输出文文本本型的这种多个参数,我直接复制这个就行了啊。 哎,复制,那么这就代表多个参数输出文本运行啊,猪八戒、唐僧、白龙马当然也可以这样把,这里直接给个数字,这也是可以支持的啊。 好,最后输出了个五,对吧?那么这是调试输出,就是说调试输出的这个参数可以混着用, 又可以输出多个参数,你可以一直往后打逗号,对吧?输出很多很多个,当然了,咱们基本上用到了也就三四个吧,最多的时候也就三四个,很少用特别多的,因为特别多的就比较乱了,你如果不做文本拼接的话就比较乱。 好,那么今天这个调试输出就先讲到这。好,那调试输出讲完了,我把它注视掉,我这里不需要了,讲信息框,信息框呢?咱们来结合一下,启动窗口用 好给一个按钮,然后双击这个按钮,他就出来了。按钮一被单击这个事件子程序就是我单击按钮,他要执行什么命令,执行什么任务啊?比如信息框,对吧? 好,参数出来了,那么我们的参数呢?信息框只能输出文本啊,不能像输出调试文本那样直接给个数组或者给多个参数。不行,它只能输出一个文本啊,是用来给用户看的,我们可以这样打文本,在这里打 hello word, 对 吧? hello word, 那 么我也可以这样打,把它展开,可以点这里这个加号啊,哎,它就展开了,可以看到这, 这出来了 hello world 了,那么也可以按住 alt 加你的方向键,就是中间功能键最底下那个方向键啊,按住 alt 加右就出来这个了,按住 alt 加左,它就又折叠回去了。好, alt 加 u 出来了,是吧? hello world, 那 么标题咱们先讲这两个参数啊,提示信息和窗口标题。标题是什么呢?我是标题吧 啊,方便咱们去查看啊,好,运行点一下啊,这里出来了,标题就是它最顶上这个, 这一行文本知道吧,然后下边内容这是这一行,当然内容也是可以换行的。换行,怎么换行呢?给大家演示一下啊。 加景换行符就出来了,内容部分的换行,嗯,换行,咱们好再加,再拼接。 加号就是拼接文本啊,加号在对数字的时候是相加,但是在对文本的时候它就是拼接文本,这个咱们后边要讲先这么用着 啊, hello world, 啊,啊,你,好吧,我再拼接一个,你好,然后运行一下,哎,点一下是不是这个提示框就出来了,这是 hello world, 换行,你好, 那么如果咱们不加这个换行符, 直接拼接,它就只只有一个 hello world, 你 好,它就凑一块去了啊,看到没有,它凑成一行了, 好,那么这是换行,提示信息换行啊,那么标题不演示换行了,因为标题不能换行啊,没有见过谁加标题还换一行的。 好,那么接下来是第二个参数,这个按钮,按钮这里它默认的是零,我们也可以选一 运行点一下。哎,一呢,他出来是确认和取消两个按钮,确定,对吧?都可以点确定和取消都可以点取消,他都没了,对吧?当然也可以点上边的叉,那么 咱们接下来咱看他的。呃,看他的提示吧, 因为他的提示里边会有一些信息,就是以后如果你拿到一个新的命令,以前没写过,也没人讲过,那么就看他的提示,包括看他的帮助文档,包括百度等各种各样方法理解他,以后你再用, 因为咱们讲课呢,不可能都给你讲,讲不过来啊,东西太多了。好,可以看到按钮这里提示初始值为零,数值由以下几组敞亮构成。 好,零确认。一,确认取消二、放弃重试忽略,对吧?那我这打零一二, 对吧?我打个二,是不是?比如说我过一段时间我想改这个程序了,我打个二,这二是什么意思? 对不对?很别扭。那怎么办呢?咱们用常量好井,就跟刚才那个换行符一样,井确认, 哎,确认取消钮,它这里弹出提示了,咱们直接选就行了。运行,这样咱们一眼就知道它弹出来的肯定是确认取消那两个按钮,好,是吧?好,那别的呢?别的是什么? 看一下啊。哎,放弃重试忽略钮呀,警,放弃,哎,出来了,放弃重试忽略运行 是吧?中指啊,重试忽略等等这三个按钮。好,我演示这两个这两组按钮啊,然后还有其他的,其他的怎么办呢?提示,接着找到提示。 好,我把它打开了。这里看上边啊,这上边看的比较清楚一点, 然后第二组是描述图标的样式对吧? 好,那么怎么让它出现这个图标的样式呢?直接给它加就行了,加警错误图标, 然后运行,哎,是不是这旁边这个, hello, 你 好, hello world 这个旁边是不是出来一个叉的那个图标对吧?好,呃。 哎,好,那么关闭关闭,如果需要其他的图标换一个询问图标。行,询问 图标它不提示你就给它打全就行了啊。运行,哎,是不是出来个问号。那其他的呢?自己去测试一下就行了。那这是第二组可以设置图标样式。第三组默认按钮, 那么默认按钮呢?就是咱们刚出来,呃,就是它默认展示的,嗯,演示一下吧,加上。 好,我这里中指中指调试,加上井默认按钮一, 运行点一下,哎,他是不是这出现了个蓝框,然后你这样你直接敲回车的话他默认就是中指,好吧,这就是默认按钮,然后这有默认按钮二,默认按钮三四。好,不管他了啊这是咱们就演示到这里 如何等待消息结束。这个我没用过,咱们看一下吧,其实不是很重要,既然没用过那就是不重要。程序等待, 程序等待。应该是他会卡住,咱们的程序就动不了了,咱们的整个这个程序就被卡在这了。基本不用啊。系统等待呢。卡住系统吗? 也不是啊,他也不卡系统好,不知道是什么啊。因为从真的是从来没用过啊。关闭掉就行了,他也没卡住系统, 行吧,就这样吧。这个,呃,愿意研究的自个研究一下。这我确实不知道,因为这是实在是没用过。好,那么接下来 他还有一个很重要的啊,第四个参数没讲,咱们暂时先不讲了啊,因为副窗口这个后边窗口的部分咱们再聊。什么是副窗口啊?其实就是副窗口呢,就是默认他的副窗口,就是他,就是你这个启动窗口, 你这个时候点这个窗口是不能用的,知道吧?那么只有你等你把这个窗口关闭以后他才能用,因为就是他这个信息框吧,他是堵塞,就是他是堵塞你的信,你的程序的, 知道吧?你只有把他停掉以后,你这里才能,哎呦,你,就是你,你,你才能继续点这个按钮,这时候你点哪都是没用的,你点关闭也没用。 好,那么这是这个信息框的副窗口这个问题啊,就是他会卡住他的副窗口,他的副窗口就不能再用了。好,关闭。 好,那么,呃,副窗口以后再讲,接下来呢?讲他的返回值,因为他有一个返回值,对吧?那用户点了确定点了取消,放弃重试等等等等, 那我得知道我作为程序员,我得知道他点了哪个,我才能执行对应的操作呢,对吧?我这里先用确认取消啊,警,确认取消。 好,那这是确认取消钮,我怎么才能知道用户点了什么?那我给他一个变量接收他的返回值,我这里用个 a 就 行了啊, 好,算了,写详细一点吧这是。呃,信息框返回值,打错了, 信息框返回值好了,那么我们输出一下 信息框返回值。好,然后我们把这个关关掉了,我们用不着了,运行 好,然后我点一下确定返回,看调试输出,咱们输出这个它的返回值啊,这里返回了一个零,对吧? 好,再运行一下,点取消呢?来取消它就返回一个一。 好,那么我们就根据他返回的是还是一还是零,那么我们就可以判断用户到底点了什么,相应的我们就可以做出对应的,就是不同情况的那种执行某一段程序。 好,那么这里给大家演示一下啊。判断, 呃,判断,如果不知道的话,后边再说吧,就是它是区分这个信息框,它这个返回值啊,我们去判断它是返回的什么。 呃,如果学过其他语言的应该知道,就是 if, 哎,就是这个,就是就是这个意思,就是 if, if, else, 就是 这个意思啊。 啊?信息框返回一直,那么如果真的是完全零基础的话,先凑合看着啊,零就代表的是 啊调试输出,当然了,实际咱们写程序的时候肯定不会这么简单,这一块要执行很多任务的 好,调试输出是用户点击了确认,对吧?然后这里调试输出, 用户点击了取消,对吧?运行好,看我点个确定, 确定不是确认无所谓了啊,他也是确认取消啊,他知道,知道这个东西就行了,不重要啊,是吧?下边出现了用户点击了确认 啊,还有个零,零,不管他啊,零是咱们刚才这一行输出的,我没有,我没有给他注视掉,导致了他还是输出了,没关系好,然后我们点一下取消,哎,是不是用户点击了取消 来把它注视掉呦。呃,把这个注视掉,它干扰咱们的输出, 嗯,确定用户点击了确认啊,取消,用户又点了取消,对吧?那么这是咱们的 这个确定还是取消?那么大家看的信息框返回值等于零,谁知道这零什么意思啊,对吧?那一样的,我们还是用常量来代替比较好。呃,确认, 这个还是看一下提示吧,对吧?看到它的返回值在这里子程序名,信息框返回值类型,整数行备注,后边就是对它返回值的这个解释, 可以看到零确认钮,一取消钮,对吧?我们给它改成,哎,改成井确认钮,好运行一下, 哎,点击,是吧,确认同样是可以的,取消,那么是这样是不是就一目了然?我知道这个信息框返回了,确认没有,对吧?因为说实在的啊。 嗯,当你学了很多以后,很容易会忘记这个零代表的什么意思, 那么用常量来代替就会一目了然。咱们知道他点击的是确认,或者说我这判断的是确认,如果想改,我改成取消,对吧?我就很容易就知道,我不用去记他的数值,我知道就是取消钮就对了, 要不然我还记数值。什么取消啊,什么中指啊,忽略啊,能记得过来的啊, 用常量替代是很非常好的办法,哎,对吧?然后我点一下确定,他就反了,用户点击了取消,为什么?因为我这判断的是取消呢?好,这样反过来了,对吧? 好了,那么这是信息框,就讲这些,今天那么咱们三个命令也讲完了。嗯,如果有兴趣的话,可以自己演示一下。如果觉得这里边有很多的陌生的东西还是不太习惯或者接受不了, 那么等咱们慢慢讲着讲着,这些陌生的东西就都变成熟悉的东西了,大家回头自己再演示就可以了。那如果是现在就能理解这些东西,就可以,现在就可以演示一下, 包括演示一些其他的选项,对吧?好,那咱们今天就到这。