微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

pyautogui.leftclick 和或 rightclick 不起作用

如何解决pyautogui.leftclick 和或 rightclick 不起作用

import pyautogui,time

time.sleep(5)
pyautogui.moveto(x=960,y=540)
pyautogui.sleep(0.5)
pyautogui.rightClick

由于某种原因,右键单击不起作用 idk 请帮助

解决方法

不是先移动它然后点击你必须做的

struct Vertex {
    vec2 p;
    vec4 c;
};

vec4 overlay(vec4 c1,vec4 c2) {
    return vec4((1.0 - c2.w) * c1.xyz + c2.w * c2.xyz,1.0);
}

vec4 drawLineA(Vertex v1,Vertex v2,vec2 pos) {
    vec2 a = v1.p;
    vec2 b = v2.p;
    vec2 r = floor(pos);
    
    vec2 diff = b - a;
    
    
    if (abs(diff.y) < abs(diff.x)) {
        if (diff.x < 0.0) {
            Vertex temp1 = v1;
            Vertex temp2 = v2;
            
            v1 = temp2;
            v2 = temp1;
            
            a = v1.p;
            b = v2.p;
            diff = b - a;
        
        }
        
        float m = diff.y / diff.x;
        float q = r.x - a.x;
        
        if (floor(m * q + a.y) == r.y && a.x <= r.x && r.x <= b.x) {
            float h = q / diff.x;
            return vec4((1.0 - h) * v1.c + h * v2.c);
        }
        
        
    } else {
        if (diff.y < 0.0) {
            Vertex temp1 = v1;
            Vertex temp2 = v2;
            
            v1 = temp2;
            v2 = temp1;
            
            a = v1.p;
            b = v2.p;
            diff = b - a;
        
        }
    
        float m =  diff.x / diff.y;
        float q = r.y - a.y;
        
        if (floor(m * q + a.x) == r.x && a.y <= r.y && r.y <= b.y) {
            float h = q / diff.y;
            return vec4((1.0 - h) * v1.c + h * v2.c);
        }
    
    }
    
    return vec4(0,0);
}

vec4 drawLineB(Vertex v1,vec2 pos) {
    vec2 a = v1.p;
    vec2 b = v2.p;
    
    vec2 l = b - a;
    vec2 r = pos - a;
    float h = dot(l,r) / dot (l,l);
    
    vec2 eC = a + h * l;
    
    if (floor(pos) == floor(eC) && 0.0 <= h && h <= 1.0 ) {
       return vec4((1.0 - h) * v1.c + h * v2.c); 
    }
    
    return vec4(0,0);
}



void mainImage( out vec4 fragColor,in vec2 fragCoord )
{
    float t = iTime;
    float r = 300.0;
    Vertex v1 = Vertex(vec2(400,225),vec4(1,1));
    Vertex v2 = Vertex(vec2(400.0 + r*cos(t),225.0 + r*sin(t)),vec4(0,1,1));
    
    vec4 col = vec4(0,1);
    col = overlay(col,drawLineA(v1,v2,fragCoord));
    col = overlay(col,drawLineB(v1,fragCoord));
    // Output to screen
    fragColor = col;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。