找回密码
 加入
搜索
查看: 2411|回复: 5

[AU3基础] 请问剪贴板操作怎么工作不正常啊?--已解决

[复制链接]
发表于 2010-9-19 20:06:36 | 显示全部楼层 |阅读模式
本帖最后由 nix 于 2010-9-20 17:39 编辑

代码如下
Func hh_bold( )
        If WinActive("[class:PP11FrameClass]") Or WinActive("[class:OpusApp]") Then
        BlockInput(1)
        MouseClick("left")
        MouseClick("left")
        $hh_error=WinWaitActive("[class:EQNWINCLASS]","",3)
        if $hh_error=0 Then
                BlockInput(0)
                MsgBox(16, "出错啦", "没能激活窗口", 1)
                return 0
        EndIf
        Send("^a")
        Sleep(100)
        Send("^x")
        Sleep(300)
        Send("^v")
        Sleep(500)
        WinClose("[class:EQNWINCLASS]")
        sleep(100)
        BlockInput(0)
        Return 1
        Else
        MsgBox(16,"出错啦", "没找到窗口",1)
        Return 0
        EndIf
EndFunc
工作时好像根本没有剪切到剪贴板,粘贴也根本不成功。
此处剪切的不是普通文本,是ppt里面的公式编辑器里面的内容。
本人初学,莫笑哦

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

 楼主| 发表于 2010-9-20 09:33:56 | 显示全部楼层
工作流程是简单的全选、剪切、粘贴。
我用ahk完成了一个,能正常工作。autoit3不工作实在费解啊

现贴上ahk的代码
#b::
if WinActive("ahk_class PP11FrameClass") or WinActive("ahk_class OpusApp")
{
        BlockInput On
        Clipboard=
        click 2
        WinWaitActive,ahk_class EQNWINCLASS,,2
        if ErrorLevel
        {
            BlockInput Off
                MsgBox,0,出错啦, 超时2s,2
            return
        }
        sendinput ^a
        sleep 100
        sendinput ^x
        ClipWait,2,1
        if ErrorLevel
        {
            BlockInput Off
                MsgBox,1, 尝试复制到剪贴板失败,,出错啦,2
            return
        }
        sleep 200
        sendinput ^v
        Clipboard=
        sleep 1200
        WinClose, ahk_class EQNWINCLASS
        sleep 100
}
else 
{
        BlockInput Off
        MsgBox,0,出错啦, 没找到程序窗口^_^,2
}
BlockInput Off
return
发表于 2010-9-20 10:21:59 | 显示全部楼层
不要使用 BlockInput 函数屏蔽键盘,再试试可不可以
 楼主| 发表于 2010-9-20 12:38:26 | 显示全部楼层
不要使用 BlockInput 函数屏蔽键盘,再试试可不可以
baikaifang 发表于 2010-9-20 10:21


多谢!。
果然如此,测试成功了。这个问题困扰我好久,看样子还得好好学学autoit3
发表于 2010-9-20 13:51:13 | 显示全部楼层
学习了!!!!
发表于 2010-9-20 13:54:47 | 显示全部楼层
希望规范标题,改为“已解决”
“已经解决”和“未解决”在搜索时匹配“已解决”的关键字时命中率一样~
比如LZ的帖子在使用“剪贴板 已解决”搜索时是找不到的
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-14 13:15 , Processed in 0.080371 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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