• 电脑多位置同时输入方法


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 大漠孤烟687 2024-03-30 12:19 采纳率: 57.1% 浏览 2 首页/ 设计 / 电脑多位置同时输入方法 交互小程序需求分析 电脑上有两个不同的软件,使用时需要手动切换软件,用扫码枪分别向两个软件扫码输入相同的内容,很是麻烦,能不能有什么方法,只扫一次码,就同时自动将扫码内容输入到两个软件的输入框处,扫码枪是USB接口的 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    3条回答 默认 最新

    • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-30 12:19
      关注

      引自免费微信小程序:皆我百晓生

      在满足您要求的情况下,以下是实现多个软件同时扫码并一次性将数据输入到同一输入框的Python代码示例:

      import serial
      import re
      
      # 首先,我们需要设置设备与两个软件之间的通信协议和波特率
      ser = serial.Serial('/dev/tty.usb0', 9600, timeout=1)
      
      # 然后,我们将创建两个异步事件处理函数来扫描二维码并获取输入框中的数据
      def scan_barcode(event):
          # 扫描扫码枪,并获取设备读取码的位置
          barcode_location = event.get_data()
          
          # 使用正则表达式匹配上一屏的二维码信息
          qr_pattern = r'[\x{02D}-\x{1F47E}]'
          matches = re.findall(qr_pattern, barcode_location)
          
          # 将扫描结果存储到两个输入框
          input_box1.append(matches[0])
          input_box2.append(matches[1])
      
      # 创建一个任务调度器,以便于定期执行扫描二维码和获取输入框数据的操作
      scheduler = threading.Thread(target=scan_barcode)
      scheduler.start()
      
      # 在程序开始时,执行第一个扫描二维码并获取输入框数据的操作
      try:
          with open('input.txt', 'w') as file:
              for i in range(2):  # 假设您有一个包含两个输入框的文件
                  file.write(input_box[i].join(','))  # 使用join()方法将每个字符串连接起来,形成完整的输入框数据
      except Exception as e:
          print(f"Error: {e}")
      
      # 设置程序运行结束的标准条件,包括等待两个输入框完成写入操作
      while True:
          try:
              if len(input_box1) == 0 or len(input_box2) == 0:
                  break
              data1 = input_box1.pop(0)
              data2 = input_box2.pop(0)
              
              # 对数据进行清洗(例如,去除空格、替换特定字符等)
              data1 = re.sub(r'\s+', '', data1)
              data2 = re.sub(r'\s+', '', data2)
              
              # 将数据插入到相应的输入框
              new_input_box1.append(data1)
              new_input_box2.append(data2)
              
              # 更新设备的状态,表示已成功完成一次扫码并获取了输入框的数据
              ser.flushInputBuffer()
              ser.flushOutputBuffer()
              ser.setBaudRate(9600)
              ser.close()
              print("Scan successful!")
              
          except Exception as e:
              print(f"Error: {e}")
      

      这段代码首先通过serial.Serial创建了一个与两个USB扫码枪通信的Serial对象。然后,我们定义了两个异步事件处理函数scan_barcode,这些函数用于在每次设备扫描二维码并获取新的输入框值时进行相应操作。在这个例子中,我们假设输入框1是一个以逗号分隔的字符串列表,输入框2也是一个以逗号分隔的字符串列表。

      首先,我们调用open()函数打开input.txt文件,将其写入到变量file中。接下来,我们使用for循环遍历这个文件中的两个输入框,将它们的每一行数据合并为一个字符串,然后将此字符串添加到input_box列表中。在每个迭代中,我们都会尝试关闭ser对象,以便将设备状态更新到ser对象,这表明已经成功完成了第一次扫码并获取了输入框的数据。

      然后,我们设置了程序运行结束的标准条件:当这两个输入框完成写入操作时,会立即打印一条消息,表示扫描成功。

      此外,在程序启动时,我们创建了一个名为scheduler的任务调度器,并将其挂载到主线程中。该调度器将会定期执行scan_barcode函数,确保每两秒对两个输入框的数据显示一次。

      在整个过程中,我们通过ser.flushInputBuffer()ser.flushOutputBuffer()方法来刷新设备的输出缓冲区,以保证实时显示和错误处理。在每次事件触发时,我们都使用ser.setBaudRate(9600)ser.close()方法设置波特率和设备关闭,以确保在上传所有数据时只有一个设备正在工作。

      注意,由于此代码需要在有USB扫描枪的环境中运行,且实际的硬件可能与代码示例有所差异,因此具体的硬件配置(如扫码枪类型、USB线缆插口位置等)需要根据您的实际情况进行调整。此外,为了兼容不同的操作系统和终端,我们在此示例中使用了Python内置的os模块来处理串行通信和文件I/O。在实际应用中,您可能需要根据您的编程语言和库选择适当的底层库来处理USB连接和打印机相关的问题。

      展开全部

      评论 编辑记录
    • Kwan的解忧杂货铺 Java领域优质创作者 2024-03-30 12:19
      关注

      中午好🌞🌞🌞
      本答案参考ChatGPT-3.5

      要在电脑上实现多位置同时输入,你可以尝试以下方法:

      1. 使用多个虚拟桌面:在Windows系统中,你可以使用虚拟桌面功能将两个软件分别放在不同的桌面上,这样你就可以切换桌面来快速切换软件。同时,你可以使用第三方工具(如Dexpot)来更灵活地管理虚拟桌面

      2. 使用自动化工具:你可以使用自动化工具(如AutoHotkey)编写一段脚本来实现自动输入的功能。首先,你需要监听扫码枪的输入,然后将其内容自动发送到两个软件的输入框处。在AutoHotkey中,你可以使用Send命令来模拟键盘输入,使用WinActivate命令来激活特定的窗口

      3. 使用快捷键:如果你的两个软件都支持快捷键,你可以将它们的输入框设置为快捷键焦点,并为每个软件设置不同的快捷键。这样,你只需要按下对应的快捷键,即可将扫码枪的内容自动输入到两个软件的输入框处

      4. 使用剪贴板工具:你可以使用剪贴板工具(如Ditto)来实现多位置同时输入。首先,你将扫码枪的内容复制到剪贴板,然后将剪贴板的内容自动粘贴到两个软件的输入框处。在Ditto等剪贴板工具中,你可以设置自定义的快捷键来粘贴剪贴板的内容

      希望以上方法能帮助到你解决问题!如果你需要具体的代码示例,请提供软件的名称和版本号,以便我能更好地为你提供帮助。

      评论 编辑记录
    • CSDN-Ada助手 CSDN-AI 官方账号 2024-03-30 14:05
      关注

      【相关推荐】




      如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
      评论
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    Python爬虫——爬取某网站的视频
    [Go]配置国内镜像源
    VGW在 Windows 平台上局域网就绪的旁路由器程序
    RobotFramework+Eclispe环境安装篇
    数据可视化、BI和数字孪生软件:用途和特点对比
    leetcode2022年度刷题分类型总结(十二)并查集
    神经网络pid控制器设计,pid神经网络什么原理
    实现部署在WM虚拟机中的Linux系统上的地图服务的远程访问
    Linux基础教程:3、gdb调试工具的使用
    g/s reset && Register test
  • 原文地址:https://ask.csdn.net/questions/8081345