OverlayText

Buat teks di atas aplikasi lain. Panggil show() untuk menampilkan dan menerapkan perubahan berikutnya. Aktifkan pelacakan tekan, seret, atau tahan dengan track(). Baca nilai saat ini lewat state(); text() dan background() adalah metode.

Sintaks

OverlayText(text="", position=(0, 0), color="#FFFFFFFF", size=16, background=None)

Parameter konstruktor

NamaDeskripsi
textString
Isi teks. Pasangan tag <b>...</b> yang lengkap hanya menebalkan teks di dalamnya, termasuk lintas baris. Tag dan kode entitas lain ditampilkan apa adanya. Jika tag tebal tidak berpasangan, seluruh teks ditampilkan apa adanya. state()["text"] mengembalikan teks asli.
Opsional · Posisi atau nama
Default: ""
positionPoint | tuple[Number, Number]
Initial position as Point or tuple/list (x, y). Point carries scale/anchor metadata.
Opsional · Posisi atau nama
Default: (0, 0)
colorColor | String | Number
Initial text color.
Opsional · Posisi atau nama
Default: white
sizeNumber
Initial text size (sp).
Opsional · Posisi atau nama
Default: 16
backgroundColor | String | Number | None
Initial background color. None means transparent/no background.
Opsional · Posisi atau nama
Default: None

Nilai yang dikembalikan

Contoh

badge = OverlayText("Running...", Point(320, 160, scale="width", anchor="top"), background=None)
badge.color("#FF00E676").background("#66000000").size(18).track(press=True, move=True, hold=True, hold_ms=700)
badge.show()

state = badge.state()
if state["status"] == 2:
    MacroPanel.notify("Badge is moving")

p = badge.get_point()
r = badge.get_region()
if r is not None:
    r.highlight("yellow", auto_hide_ms=600)

badge.hide()   # sembunyikan cepat
badge.show()   # tampilkan lagi dengan cepat
badge.off()    # lepas sepenuhnya

Field

NamaDeskripsi
xNumber
Top-left X position in pixels. Writable before show().
Default: 0
yNumber
Top-left Y position in pixels. Writable before show().
Default: 0
scaleString
Coordinate scale copied from Point positions.
Default: fixed
anchorString
Coordinate anchor copied from Point positions.
Default: none
argbColor
Text color. Assign with Color/string/number values. Use overlay.color(value) for method chaining.
Default: white
size_spNumber
Text size in sp. Use overlay.size(sp) for method chaining.
Default: 16
Contoh konstruktor
badge = OverlayText("<b>Status:</b> Ready", Point(420, 220, scale="width", anchor="top"), background=None)
badge.show()

Metode

13 metode

OverlayText.off_all

Matikan dan lepaskan semua teks overlay yang dibuat alur saat ini, tanpa memengaruhi alur yang berjalan paralel.

Sintaks

OverlayText.off_all()

Nilai yang dikembalikan

None — Tidak ada nilai kembalian.

Contoh

# Lepaskan overlay yang dimiliki alur ini
a = OverlayText("Running", (24, 120))
a.show()
OverlayText.off_all()

OverlayText.text

Atur isi teks. Panggil show() untuk memperbarui teks di layar.

Sintaks

overlay.text(value)

Parameter

NamaDeskripsi
valueString
Isi teks. Pasangan tag <b>...</b> yang lengkap hanya menebalkan teks di dalamnya, termasuk lintas baris. Tag dan kode entitas lain ditampilkan apa adanya. Jika tag tebal tidak berpasangan, seluruh teks ditampilkan apa adanya. state()["text"] mengembalikan teks asli.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
badge.text("Running")
badge.show()

OverlayText.color

Perbarui warna teks.

Sintaks

overlay.color(value)

Parameter

NamaDeskripsi
valueColor | String | Number
Color value.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.color("#FF00E676")
badge.show()

OverlayText.background

Perbarui warna latar belakang. Melewati Tidak Ada menghapus latar belakang.

Sintaks

overlay.background(value=None)

Parameter

NamaDeskripsi
valueColor | String | Number | None
Background color, or None for transparent/no background.
Opsional · Posisi atau nama
Default: None

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.background("#66000000")
badge.show()
badge.background(None)
badge.show()

OverlayText.size

Perbarui ukuran teks (sp).

Sintaks

overlay.size(sp)

Parameter

NamaDeskripsi
spNumber
Text size in sp.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.size(20)
badge.show()

OverlayText.position

Perbarui posisi undian dengan Point atau tuple/list (x, y). Titik membawa metadata skala/jangkar.

Sintaks

overlay.position(position)

Parameter

NamaDeskripsi
positionPoint | tuple[Number, Number]
New position.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.position((80, 160))
badge.show()

OverlayText.track

Atur pelacakan ketukan, seretan, dan tekan lama. Jika semua opsi bernilai False, teks tetap diam dan sentuhan diteruskan ke elemen di bawahnya. Saat teks bertumpang tindih dengan highlight yang dapat digeser, teks dengan pelacakan aktif diprioritaskan menerima sentuhan. Gestur yang dimulai di luar teks tetap mengendalikan highlight.

Sintaks

overlay.track(press=False, move=False, hold=False, hold_ms=600)

Parameter

NamaDeskripsi
pressBoolean
Laporkan PRESSED saat tekanan singkat dilepas tanpa menyeret atau menahan lama.
Opsional · Posisi atau nama
Default: False
moveBoolean
Izinkan teks diseret. Gerakan dalam ambang sentuh perangkat tidak memindahkan teks; penyeretan dimulai setelah melewati ambang.
Opsional · Posisi atau nama
Default: False
holdBoolean
Laporkan HOLDING setelah hold_ms, lalu HOLDED saat dilepas; menyeret mendapat prioritas.
Opsional · Posisi atau nama
Default: False
hold_msNumber
Waktu menahan sebelum HOLDING dalam milidetik. Nilai di bawah 150 menjadi 150.
Opsional · Posisi atau nama
Default: 600

Nilai yang dikembalikan

OverlayText — Mengembalikan overlay ini agar Anda dapat memanggil metode berikutnya.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.track(press=True, move=True, hold=True, hold_ms=700)
badge.show()
print(badge.state())

OverlayText.get_point

Dapatkan titik kiri atas teks overlay ini. Posisi ini diperbarui setelah drag bergerak. Panggilan ini tidak mengonsumsi peristiwa interaksi.

Sintaks

overlay.get_point()

Nilai yang dikembalikan

Point — Posisi overlay saat ini dalam piksel layar.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
point = badge.get_point()
print(point.x, point.y)

OverlayText.get_region

Dapatkan wilayah yang membungkus batas teks hamparan saat ini. Mengembalikan Tidak Ada bila overlay belum terlihat atau belum diukur. Panggilan ini tidak mengonsumsi peristiwa interaksi.

Sintaks

overlay.get_region()

Nilai yang dikembalikan

Region? — Wilayah pembatas untuk teks overlay, atau Tidak Ada. Selalu periksa Tidak Ada sebelum menggunakan wilayah tersebut.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
bounds = badge.get_region()
if bounds is not None:
    print(bounds.width, bounds.height)

OverlayText.show

Tampilkan teks, termasuk setelah hide(), dan terapkan perubahan isi, gaya, posisi, pelacakan, atau atribut yang dapat diubah. Panggil show() lagi setiap kali konfigurasi berubah. Jika hanya posisi berubah saat terlihat, hanya posisi terbaru yang disimpan untuk bingkai berikutnya. Panggilan selesai sebelum posisi tampil: x/y adalah posisi yang diterima, dan overlay_width_px/overlay_height_px bernilai None. Pembaruan lain menunggu hingga diterapkan. Saat terlihat, show() mempertahankan status dan peristiwa jika pelacakan tidak berubah. Menampilkan setelah hide() atau mengubah pelacakan mereset ke IDLE; perubahan pelacakan juga membatalkan gestur sebelumnya.

Sintaks

overlay.show()

Nilai yang dikembalikan

dict — Kamus status overlay saat ini.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
badge.text("Running")
print(badge.show())

OverlayText.hide

Sembunyikan teks. Panggil show() untuk menampilkannya lagi.

Sintaks

overlay.hide()

Nilai yang dikembalikan

dict — Kamus status overlay saat ini.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
badge.hide()
badge.show()

OverlayText.off

Matikan teks overlay dan lepaskan sumber daya.

Sintaks

overlay.off()

Nilai yang dikembalikan

dict — Kamus status overlay saat ini.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.show()
print(badge.off())

OverlayText.state

Baca status terbaru. Saat pelacakan yang sesuai diaktifkan: Tekan lalu lepas → PRESSED (1). Sedang menyeret → MOVING (2); lepas → MOVED (4). Tahan selama hold_ms → HOLDING (3); lepas → HOLDED (7). Status lain: IDLE (0), HIDDEN (5), OFF (6). Menekan saja belum membuat peristiwa; menyeret lebih diprioritaskan daripada menahan. PRESSED, MOVED, dan HOLDED dikembalikan sekali lalu direset ke IDLE. MOVING dan HOLDING tetap selama interaksi berlangsung. Hanya status terbaru yang disimpan; peristiwa baru menggantikan yang belum dibaca. Pembatalan tidak membuat peristiwa penyelesaian. Perubahan posisi yang tertunda diterapkan sebelum membaca. Hanya state() yang mengonsumsi peristiwa akhir. Peristiwa tidak kedaluwarsa, tetapi membaca setiap 100 ms tidak menjamin semua peristiwa di antara pembacaan tersimpan.

Sintaks

overlay.state()

Nilai yang dikembalikan

dict — Dictionary status berisi teks asli, supports_inline_bold=True, status/status_label, opsi pelacakan, serta lebar/tinggi teks mengambang dalam piksel jika tersedia.

Contoh

# Atur atau periksa overlay milik alur ini
badge = OverlayText("Ready", (24, 120))
badge.track(press=True, move=True)
badge.show()
state = badge.state()
print(state["status_label"])