2022-01-01から1年間の記事一覧

【Python】日本語キーボード環境でのキーボード操作自動化は「PyAutoGUI」より「keyboard」の方が優れている件

PyAutoGUIの欠点日本語キーボード環境でのキーボード操作自動化において「PyAutoGUI」は以下の欠点があります。 「:」(コロン)、「@」(アットマーク)、「^」が打てない 日本語が入力できない IMEをoffにできない(切り替えはできるが必ずoffにしたい時に…

【仕事効率化】【Bluetooth】2つのPC間で無線シリアル通信、それを利用してマクロパッドを作る

はじめに 方法(初回のみ) メインPCの設定 サブPCの設定 2回目以降 はじめにこの記事は過去の記事の続きで、Bluetoothを使って2つのPC間で無線シリアル通信をする方法です。 touch-sp.hatenablog.com 方法(初回のみ)メインPCの設定設定のBluetoothとデバ…

【仕事効率化】【PySide6】2つのPC間でシリアル通信、それを利用してマクロパッドを作る

はじめに 前システムの概略 前システムに対する考察 新システム 接続 有線接続 無線接続 Pythonスクリプト マクロパッド側 メインPC側 main.py action_list.py 最後に はじめに先日、Arduino Leonardoを用いて使っていない 2in1 PCでマクロパッドを作成しま…

【Python】【venv】コンソールウインドウ非表示でPythonスクリプトを実行する方法(ワンクリックで実行)

はじめに 方法 注意点 最後に はじめにワンクリックでPythonスクリプトを実行する方法の一つを紹介します。コンソールウインドウは非表示にすることが可能です。WindowsでPythonを使っている人が対象です。pyinstallerでexe化する必要はありません。方法例と…

【改良3】【仕事効率化】使っていない 2in1 PC(またはタブレット)を有効活用、マクロパッドとして復活させる

はじめに 変更点 KeyboardWidgeクラスを定義したファイルを作成 メインファイルの変更 Arduino Leonardoのスケッチを変更する 前回までの記事 つづき はじめに以前Arduinoを使用して2in1 PC(またはタブレット)をマクロパッドとして使用する方法を紹介しま…

【改良2】【仕事効率化】使っていない 2in1 PC(またはタブレット)を有効活用、マクロパッドとして復活させる

はじめに システムの概略 改善点 新旧比較 旧システム 新システム 注意点 変更前 変更後 前回までの記事 つづき はじめに以前Arduinoを使用して2in1 PC(またはタブレット)をマクロパッドとして使用する方法を紹介しました。 touch-sp.hatenablog.com 今回…

【改良1】【仕事効率化】使っていない 2in1 PC(またはタブレット)を有効活用、マクロパッドとして復活させる

はじめに Pythonスクリプト メインファイル(main.py) PowerPointのためのファイル(powerpoint.py) YouTubeのためのファイル(youtube.py) 関連記事 つづき はじめに前回Arduinoを使用して2in1 PC(またはタブレット)をマクロパッドとして使用しました…

PyQt6とPySide6で異なる点【1】QPushButtonのクリックイベントでlambda式を使う

はじめに最近PyQt6からPySide6に乗り換えました。そこではまった点があったので備忘録として残しておきます。異なる点PyQt6 self.action[-1].triggered.connect(lambda state, x=submenu_name: self.menubarAction(x)) PySide6 from functools import partia…

【仕事効率化】使っていない 2in1 PC(またはタブレット)を有効活用、マクロパッドとして復活させる

Arduinoを使用して使っていない 2in1 PC(またはタブレット)をマクロパッドとして有効活用しました。

【C#】【Windowsフォームアプリケーション】5年ぶりに数独を解く Part 4

C#

はじめに C#のコード 最終的なファイル Form1.cs settings.cs inputform.cs 環境 前回までの記事 はじめに最後に数独を解くためのコードを書きます。バックトラック法を用いています。単純化のため複数解が存在していても一つ見つけたら終了するようになって…

【C#】【Windowsフォームアプリケーション】5年ぶりに数独を解く Part 3

C#

はじめに C#コード 検証ボタンの実装 新規入力ボタンの実装 前回までの記事 つづきの記事 はじめに今回は「検証ボタン」と「新規入力ボタン」を実装します。「検証ボタン」は入力された問題が適切がどうか検証するためのものです。問題を解く前に実行するよ…

【C#】【Windowsフォームアプリケーション】5年ぶりに数独を解く Part 2

C#

はじめに C#コード フォームを定義する新たなファイル(inputform.cs) メインコード(Form1.cs) GUI構築コード(settings.cs) 前回までの記事 つづきの記事 はじめに今回は問題を入力するためのフォームを作ります。今回もTableLayoutPanelを使用します。…

【C#】【Windowsフォームアプリケーション】5年ぶりに数独を解く Part 1

C#

はじめに C#コード メインコード(Form1.cs) GUI構築コード(settings.cs) つづきの記事 はじめに5年前にC#で数独を解くプログラムをGUI付きで書きました。今回5年たってTableLayoutPanelやFlowLayoutPanelの知識を身につけたので書き直すことにします。P…

【Ubuntu 22.04】【MXNet】【GluonCV】Webカメラの動画に対してリアルタイムに人物以外の背景を消す

はじめに 結果 Pythonスクリプト 修正前 修正後 動作環境 環境構築 はじめに以前に書いたスクリプトの動作確認になります。 touch-sp.hatenablog.com 今回はUbuntu 22.04 on WSL2を使用しています。 PythonもMXNetもGluonCVも新しいバージョンになっています…

【C#】【Windowsフォームアプリケーション】TableLayoutPanelを使ってGUIを構築するぞ

C#

はじめに C#のコード メインコード GUI構築のコード 環境 (補足)オリジナルクラスの作成 メインコード GUI構築のコード はじめになるべくコントロール(ボタンやテキストボックスなど)のサイズや位置を指定しない方法を考えます。今回設定したのはTableLa…

【C#】【Windowsフォームアプリケーション】SplitContainerとFlowLayoutPanelを使ってGUIを構築するぞ

C#

はじめに 各論 SplitContainerのSplitterDistanceを固定する テキストボックスのフォントのみを指定する ラベルとテキストボックスのセットを縦に並べる ラベルとテキストボックスのセットを横に並べる 参考にさせて頂いたサイト 環境 さいごに はじめになる…

【続】【PySide6】【WSL2】カメラアプリを作る

はじめに 結果 Pythonスクリプト ポイント 動作環境 各種設定 Ubuntu 22.04の設定 OBS Studioの設定 つづき はじめに前回Webカメラの映像を枠なしで表示することができました。 touch-sp.hatenablog.com それによってOBS Studioでウィンドウキャプチャした後…

【PySide6】【WSL2】OpenCVでキャプチャしたWebカメラの映像を枠なしで表示する

はじめに 目的 Pythonスクリプト ポイント 動作環境 はじめにこの前までPyQt6を使っていましたが突然PySide6に切り替えました。特に理由はありません。タイトルにあるようにOpenCVでキャプチャしたWebカメラの映像を枠なしで表示させてみました。冒頭の写真…

【続】【PyQt6】【サンプル】QToolBar(モダンなツールバーをできるだけ簡潔に実装する) part 2

はじめに サンプルスクリプト ポイント アイコンのダウンロード 動作環境 PyInstallerでexe化 PySide6で実行 実用例 はじめに前回の続きです。 touch-sp.hatenablog.com 一番上のアイコン「Menu」を押すとツールバーが展開されるようにしました。 右のボタン…

【PyQt6】【トリミング】画像を固定サイズの矩形で切り取る

はじめに Pythonスクリプト YAMLファイル 動作環境 注意 追記 はじめに以前opencv-pythonで同じことをしました。 touch-sp.hatenablog.com 今回はPyQt6でGUIまわりを強化しました。 といっても、PyQt6から新しいスレッドを立ち上げて前回書いたopencv-python…

【PyQt6】PDFを操作するプログラム(ページ数の多いPDFファイルに目次を作って目的のページを瞬時に開く)

はじめに Pythonスクリプト 環境構築 参考にさせて頂いたサイト はじめに前回C#で作ったものを今回はPyQt6で作りました。 touch-sp.hatenablog.com Pythonスクリプト from PyQt6.QtCore import QUrl from PyQt6.QtWidgets import QApplication, QMainWindow,…

【改訂】【C#】PDFを操作するプログラム(ページ数の多いPDFファイルに目次を作って目的のページを瞬時に開く)

C#

公開日:2022年5月6日 最終更新日:2022年10月3日 はじめに 修正前 修正後 全体のコード 使い方 2022年5月7日追記 はじめに以前書いたコードの修正です。 touch-sp.hatenablog.com タイトルにあるようにページ数の多いPDFファイルに目次を作ることが目的です…

【第8回】WSL2にUbuntu 22.04 LTSを導入する(cuDNNとNCCLをインストールする)

公開日:2022年5月5日 最終更新日:2022年8月20日 はじめに 手順 CUDA toolkitのインストール 警告(エラー?) 対応 cuDNNのインストール NCCLのインストール 結果 記事一覧 はじめにMXNetを使うためにUbuntu 22.04 LTSにcuDNNとNCCLをインストールしました…

【第7回】WSL2にUbuntu 22.04 LTSを導入する(pycocotoolsを使う)

pycocotoolsをインストールしようとしたらエラーがでました。エラー内容 ERROR: Could not build wheels for pycocotools, which is required to install pyproject.toml-based projects解決法この一文で解決しました。 sudo apt install python3-dev Ubuntu…

【第6回】WSL2にUbuntu 22.04 LTSを導入する(PyQt6を使ってArduino Lチカ)

はじめに usbipd-winの導入 PyQt6の導入 Arduinoとの接続 Pythonスクリプト Arduinoスケッチ 記事一覧 はじめに必要なことは「usbipd-winの導入」と「PyQt6の導入」です。 良ければ過去の記事を参考にして下さい。usbipd-winの導入touch-sp.hatenablog.com P…

【第5回】WSL2にUbuntu 22.04 LTSを導入する(PyQt6を使う)

方法 記事一覧 方法以下のインストールを行うと使えるようになりました。 これが最適解かどうかはわかりませんが動作確認はできました。 sudo apt install libxkbcommon-x11-0 sudo apt install mesa-utils sudo apt install libfontconfig sudo apt install…

【第4回】WSL2にUbuntu 22.04 LTSを導入する(Webカメラを使う)

公開日:2022年4月25日 最終更新日:2022年8月27日 はじめに usbipd-winのインストール Windows側でやること WSL2側でやること 接続方法 注意 補足 追記 エラー内容【1】 解決方法 エラー内容【2】 解決方法 記事一覧 はじめに以前Ubuntu 20.04でカーネル…

【第3回】WSL2にUbuntu 22.04 LTSを導入する(GPUを使ってPyTorchを動かす)

最終更新日:2022年8月24日 CUDA toolkitのインストール エラー内容 解決方法 PyTorchを動かす 動作環境 記事一覧 CUDA toolkitのインストール今回はCUDA toolkit 11.4をインストールします。CUDA toolkit 11.4で「torch==1.11.0+cu113」が問題なく動きます…

【第2回】WSL2にUbuntu 22.04 LTSを導入する(Pythonのmatplotlibやpillowで画像を表示する)

「venv」のインストール 画像の表示 記事一覧 「venv」のインストールUbuntu 22.04には最初からPython 3.10.4が入っています。 hoge@DESKTOP-PKEQVVM:~$ python3 Python 3.10.4 (main, Apr 2 2022, 09:04:19) [GCC 11.2.0] on linux Type "help", "copyright…

【PyQt6】【サンプル】QToolBar(モダンなツールバーをできるだけ簡潔に実装する)

はじめに サンプルスクリプト ポイント PyInstallerでexe化 2022年5月12日追記 はじめに前回メニューバーを実装しました。 touch-sp.hatenablog.com 今回はツールバーを実装したいと思います。サンプルスクリプト from PyQt6.QtCore import Qt, QSize from P…