以下のテキストを日本語に翻訳してください:
舔狗日記を書くために、クズ男になる必要があります。冗談は抜きにして、コードを書きましょう:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QPushButton, QMessageBox
from PyQt5.QtGui import QFont, QTextDocument
import requests
class TuanGouDiary(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("舔狗の日記")
self.setFixedSize(400, 300) # 固定サイズを設定
self.setStyleSheet("background-color: #F5F5F5;") # 背景色を設定
self.text_entry = QTextEdit(self)
self.text_entry.setGeometry(50, 50, 300, 150)
self.text_entry.setFont(QFont("Arial", 12)) # フォントスタイルを設定
self.text_entry.setDocument(QTextDocument()) # ドキュメントオブジェクトを設定
self.request_button = QPushButton("毎日舔狗日記", self)
self.request_button.setGeometry(50, 220, 150, 30)
self.request_button.setStyleSheet("background-color: #FF69B4; color: white; font-size: 12px;") # ボタンスタイルを設定
self.request_button.clicked.connect(self.get_tiangou)
self.copy_button = QPushButton("一括コピー舔狗日記", self)
self.copy_button.setGeometry(200, 220, 150, 30)
self.copy_button.setStyleSheet("background-color: #FF69B4; color: white; font-size: 12px;") # ボタンスタイルを設定
self.copy_button.clicked.connect(self.copy_content)
self.text_entry.document().setDefaultStyleSheet("p { line-height: 1.5; }") # 行間を設定
def get_tiangou(self):
try:
response = requests.get("https://cloud.qqshabi.cn/api/tiangou/api.php")
tiangou = response.text
self.text_entry.clear()
self.text_entry.insertPlainText(tiangou)
except requests.exceptions.RequestException as e:
QMessageBox.critical(self, "Error", str(e))
def copy_content(self):
content = self.text_entry.toPlainText()
QApplication.clipboard().setText(content)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = TuanGouDiary()
window.show()
sys.exit(app.exec_())
まず、必要なモジュールとクラスをインポートしています。sys モジュールはコマンドライン引数を処理するために使用され、QApplication クラスは PyQt5 のメインクラスであり、アプリケーションを作成するために使用されます。QMainWindow クラスはメインウィンドウクラスであり、QTextEdit クラスはテキストエディットボックスを作成するために使用され、QPushButton クラスはボタンを作成するために使用され、QMessageBox クラスはメッセージボックスを表示するために使用されます。QFont クラスはフォントスタイルを設定するために使用され、QTextDocument クラスはドキュメントオブジェクトを作成するために使用されます。requests モジュールは HTTP リクエストを送信するために使用されます。
次に、TuanGouDiary という名前のクラスを定義し、QMainWindow クラスを継承します。クラスの初期化メソッド__init__では、ウィンドウのタイトル、サイズ、背景色を設定しています。
その後、テキストエディットボックス text_entry を作成し、位置、サイズ、フォントスタイルを設定し、空のドキュメントオブジェクトを設定しています。
次に、"毎日舔狗日記" という名前のボタンと "一括コピー舔狗日記" という名前のボタンを作成し、位置、サイズ、背景色、フォントスタイルを設定しています。これらのボタンそれぞれに get_tiangou と copy_content という 2 つのスロット関数を接続しています。
get_tiangou 関数では、requests モジュールを使用して "API" に GET リクエストを送信し、舔狗日記の内容を取得しています。その後、テキストエディットボックスの内容をクリアし、取得した舔狗日記をテキストエディットボックスに挿入しています。
copy_content 関数では、テキストエディットボックスの内容を取得し、クリップボードにコピーしています。
最後に、if name == "main": の文では、QApplication オブジェクトを作成し、TuanGouDiary クラスのオブジェクト window をインスタンス化しています。その後、ウィンドウを表示し、アプリケーションのイベントループに入ります。