找回密码
 注册
查看: 560|回复: 11
打印 上一主题 下一主题

SKILL请教 怎么在使用form时增加右键菜单

[复制链接]
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    跳转到指定楼层
    1#
    发表于 2022-1-28 17:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    我现在的写法是在主程序显示form后,进入死循环。
    1. while(axlSelect(?prompt "")
    2.                 t
    3.         )
    复制代码
    然后在done响应程序中axlDBTransactionCommit,在cancel相应程序中axlDBTransactionRollback。并且都关闭form。
    但是这样会有个问题,每次运行都会打印一行prompt后面的空行。
    请教下,你们都是怎么在使用form时增加右键菜单的。
    如果直接在form的callback程序里添加axlUIPopupSet,在form window切换到pcb时就会自动因为transaction start的mark丢失而还原。
    是否还有逻辑更正规的写法?

  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    2#
     楼主| 发表于 2022-1-28 21:12 | 只看该作者
    右键菜单用于done确认和cancel取消。不是在form里面点右键。

    “来自电巢APP”

    该用户从未签到

    3#
    发表于 2022-1-29 11:24 | 只看该作者
    是也经常犯这问题,在在菜单怎么都找不见,最后发现在右键中

    该用户从未签到

    4#
    发表于 2022-1-31 13:57 | 只看该作者
    楼主把form写到allgro的options里面,应该就可以添加右键菜单了。
    这个和allegro的命令机制有关,我也不是很懂,正常的form和allegro的命令是并行的,而右键菜单又是和options关联的,如果你将form写在options中,才能避免冲突。
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    5#
     楼主| 发表于 2022-1-31 17:03 | 只看该作者
    hjseek 发表于 2022-01-31 13:57:01
    楼主把form写到allgro的options里面,应该就可以添加右键菜单了。
    这个和allegro的命令机制有关,我也不是很懂,正常的form和allegro的命令是并行的,而右键菜单又是和options关联的,如果你将form写在options中,才能避免冲突。


    感谢hjseek,使用mini的form确实是个办法,但有的时候还是得使用标准的form,对于标准的form我现在还是使用一楼里面的方法,凑合也可以,但还是想找个更好的办法。

    “来自电巢APP”

  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    6#
     楼主| 发表于 2022-2-7 17:43 | 只看该作者
    大佬都不来指导一下嘛。。。
    我测试了一下。axlUIPopupSet放在form里时,
    如果form里有用户交互的函数比如axlSelect,一切正常,可以使用右键done和cancel,
    如果form里没有用户交互的函数,比如只使用了axlAddSelectAll,当form里的程序执行完,并切换到PCB界面,会自动cancle还原。

    不知道大佬们有什么建议。我现在需要同时使用axlSelect和axlAddSelectAll两种。
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    7#
     楼主| 发表于 2022-2-13 10:06 | 只看该作者
    如果主程序里面有一个while axlSelect循环,form里也增加axlSelect,那么form里这个是不会生效的。

    继续请大佬们指导。

    该用户从未签到

    8#
    发表于 2022-2-19 00:22 | 只看该作者
    1. procedure(show()
    2.         mypopup = axlUIPopupDefine( nil
    3.                 (list (list "Done" 'axlFinishEnterFun)
    4.                 (list "Cancel" 'axlCancelEnterFun)))
    5.                 axlUIPopupSet( mypopup)
    6. )
    复制代码

    点评

    你没懂我的意思。  详情 回复 发表于 2022-2-19 11:23
  • TA的每日心情
    奋斗
    2025-4-27 15:26
  • 签到天数: 81 天

    [LV.6]常住居民II

    9#
     楼主| 发表于 2022-2-19 11:23 | 只看该作者

    你没懂我的意思。
  • TA的每日心情

    2025-4-22 15:00
  • 签到天数: 79 天

    [LV.6]常住居民II

    11#
    发表于 2024-12-10 13:30 | 只看该作者
    观望学习,向大佬致敬
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-5-29 05:28 , Processed in 0.078125 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表