windows右键菜单新增文件-打开方式以给mybase添加右键菜单为例最终效果如下图所示: 执行步骤: 1、win键+R打开运行,输入“regedit”,点击确定,进入注册表管理器 2、打开HKEY_CLASS_ROOT找到文件夹“*”下的shell文件夹,选中shell文件夹,右键点击选择新建—>项,如下图所示, 输入文件夹名称,一般以软件名称为文件名命名 nyfedit7pro,如下图所示: 3.1、增加右键菜单显示图标鼠标左键选中nyfedit7pro文件夹名,在右侧区域空白处鼠标右键,新建>字符串值>命名为Icon 鼠标右键选中Icon,选择修改,输入mybase
桌面右键之后,点击新建,感觉出来了的内容太杂乱了,看强迫症犯了,如图: 强迫症患者,表示不能忍1.win+R打开注册表2.在注册表上复制:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew\Classes 点击Classes右键修改 挪自己想要得位置删除不需要的,注意:最后要留一个空行.bmp.txt.docx.xlsx.pptxFolder 然后,确定,保存,不要急,因为系统会自动维护整个位置,还需要修改权限,把系统的权限去掉ShellN
windows右键菜单新增文件-打开方式以给mybase添加右键菜单为例最终效果如下图所示: 执行步骤: 1、win键+R打开运行,输入“regedit”,点击确定,进入注册表管理器 2、打开HKEY_CLASS_ROOT找到文件夹“*”下的shell文件夹,选中shell文件夹,右键点击选择新建—>项,如下图所示, 输入文件夹名称,一般以软件名称为文件名命名 nyfedit7pro,如下图所示: 3.1、增加右键菜单显示图标鼠标左键选中nyfedit7pro文件夹名,在右侧区域空白处鼠标右键,新建>字符串值>命名为Icon 鼠标右键选中Icon,选择修改,输入mybase
想必大家在版本更新迭代中,不免需要对数据库表的字段进行修改字段类型或者长度的情况,如果是修改存储过程或者自定义函数,那还是很好改的,不用担心表功能收到影响.如果是改字段呢?首先要判断字段是不是已经在系统里面,没有的话,需要新增上去,有的话,需不需要修改?其次,脚本如果报错,是否会重复执行一下脚本?会不会导致别的问题呢?看脚本里面执行结果报了好多错,总觉得,会被运维鄙视一遍.做开发的,真受不了别人鄙视自己的东西.直接用sql去新增,修改字段,好像不太行,经常会有问题.下面就是提供脚本,可重复升级DELIMITER??DROPPROCEDUREIFEXISTSschema_change??CREA
想必大家在版本更新迭代中,不免需要对数据库表的字段进行修改字段类型或者长度的情况,如果是修改存储过程或者自定义函数,那还是很好改的,不用担心表功能收到影响.如果是改字段呢?首先要判断字段是不是已经在系统里面,没有的话,需要新增上去,有的话,需不需要修改?其次,脚本如果报错,是否会重复执行一下脚本?会不会导致别的问题呢?看脚本里面执行结果报了好多错,总觉得,会被运维鄙视一遍.做开发的,真受不了别人鄙视自己的东西.直接用sql去新增,修改字段,好像不太行,经常会有问题.下面就是提供脚本,可重复升级DELIMITER??DROPPROCEDUREIFEXISTSschema_change??CREA
指数运算符**console.log(2**2)//4console.log(2**3)//8console.log(2**4)//16链判断运算符的诞生(?.)在实际编程中,如果读取对象内部的某个属性,往往需要判断一下。属性的上层对象是否存在。比如,读取message.body.user.firstName这个属性,安全的写法是写成下面这样。letmessage={body:{user:{ firstName:''}}} //错误的写法;因为这message.body这个值可能没有,会导致报错constfirstName=message.body.user.firstName||'def
指数运算符**console.log(2**2)//4console.log(2**3)//8console.log(2**4)//16链判断运算符的诞生(?.)在实际编程中,如果读取对象内部的某个属性,往往需要判断一下。属性的上层对象是否存在。比如,读取message.body.user.firstName这个属性,安全的写法是写成下面这样。letmessage={body:{user:{ firstName:''}}} //错误的写法;因为这message.body这个值可能没有,会导致报错constfirstName=message.body.user.firstName||'def
各位,各位,终于把js完成了一个段落了,这次的章节一过我还没确定下面要学的内容可能是vue也可能是前后端交互,但无论是哪个都挺兴奋的,因为面临着终于可以做点看得过去的大点的案例项目了,先憋住激动地情绪,看看今天的一个内容,今天是es6新增的一些语法,简单也是真的简单,但是我要是没学今天这一天那看到了也是真的看不懂,就跟昨天的正则表达式一样一样的,今天的案例我都没怎么做,而且也都是一些比较简单的案例,我先把今天的一些有代表性的案例传上来吧,是一些面试题之类的,然后我就说下我今天学了些啥子语法,今天着重采取说的方式来换个方式,不像原来全是代码1.首先第一个案例,是一个关于let的经典面试题,既然碰
各位,各位,终于把js完成了一个段落了,这次的章节一过我还没确定下面要学的内容可能是vue也可能是前后端交互,但无论是哪个都挺兴奋的,因为面临着终于可以做点看得过去的大点的案例项目了,先憋住激动地情绪,看看今天的一个内容,今天是es6新增的一些语法,简单也是真的简单,但是我要是没学今天这一天那看到了也是真的看不懂,就跟昨天的正则表达式一样一样的,今天的案例我都没怎么做,而且也都是一些比较简单的案例,我先把今天的一些有代表性的案例传上来吧,是一些面试题之类的,然后我就说下我今天学了些啥子语法,今天着重采取说的方式来换个方式,不像原来全是代码1.首先第一个案例,是一个关于let的经典面试题,既然碰
Array.find((item,indexArr,arr)=>{})掌握找出第一个符合条件的数组成员。它的参数是一个回调函数,对所有数组成员依次执行该回调函数。直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。--找出第一个大于15的数字letarr=[10,20,30]letfirstItem=arr.find((item,index,Arr)=>{returnitem>15})console.log('firstItem==>',firstItem);//输出20--找出第一个大于19的数字的这一项的值letarr=[{age:10}