Terinspirasi oleh The Most Useless Machine Ever .
Tulis program terpendek yang melakukan hal berikut:
- buat jendela grafis, lalu segera tutup jendela dan keluar dari program.
- lakukan ini dalam beberapa cara yang tampak secara visual. Seperti "lengan" yang menekan sakelar di mesin, program harus menggunakan beberapa metode visual dalam GUI untuk menutup sendiri.
- metode visual ini harus menjadi penyebab penutupan program; Anda tidak bisa hanya menunjukkannya sebagai sesuatu di samping (meskipun mungkin ada hal-hal lain di samping)
catatan:
- Program tidak harus terlihat cukup lama agar aktivitas yang terlihat dapat dilihat oleh manusia selama aktivitas tersebut merupakan penyebab penutupan.
- Jendela harus berupa GUI (harus menampilkan jendela grafis yang berisi metode keluar yang terlihat).
- Metode visual perlu menjadi sesuatu yang dapat dilakukan pengguna jika tidak dilakukan secara otomatis. Jelaskan apa yang perlu diubah dalam kode agar pengguna dapat melakukan ini (Terima kasih kepada Iszi).
- Program harus menutup jika tidak ada gangguan dari pengguna, tetapi jika pengguna mengganggu, maka tidak perlu menutup secara otomatis.
- Harap sertakan penjelasan tentang apa yang menyebabkan program tutup.
Contoh: jendela yang berisi tombol yang secara program diklik, menjalankan potongan kode pendek yang menutup program.
Jawaban:
TI-Basic, 3 byte
Penjelasan
DispGraph
Menampilkan grafik (jendela grafis):1
Mensimulasikan pers1
(dengan menyimpan1
keAns
pada langkah terakhir dari program), yang mengambil kalkulator kembali ke layar awal. Seorang pengguna dapat melakukan hal yang sama.sumber
:
dan1
). Overhead dan tabel Filesystem jelas tidak termasuk dalam hitungan.Ruby with Shoes , 110
Buat panah kecil yang menekan tombol "Tutup". (Menekan tombol tutup secara manual juga menutup jendela.)
sumber
Windows Batch, 4 byte
Simpan program berikut ke
.bat
file di folder pengguna Anda (C: \ Users \ username):Ketika dieksekusi dari Start, Run prompt, jendela baru terbuka, ketik perintah
Exit
dan jalankan.sumber
Exit
akan menyebabkan jendela menutup sebelum file batch selesai.JavaScript:
133117(Anda harus mengizinkan munculan di peramban web Anda agar ini berfungsi)
Kode-golf:
Sumber: http://jsfiddle.net/gt2t8/2/
sumber
do this in some visually apparent manner. Like the "arm" that pushes the switch in the machine, the program must use some visual method in the GUI to close itself.
(function(){w=window.open(),d=999,i=setInterval(function(){w.resizeTo(d-=9,d);if(d<0)clearInterval(i),w.close()})})()
Golf-Basic 84 ,
54Tampilkan grafik, simulasikan tekan 1, tutup grafik dan kembali ke rumah.
sumber
perakitan x86 / Win32 (
337310271 byte)Merakit dengan MASM32 (
ml /c /coff /Gz /I<include path> test.asm
/link /SUBSYSTEM:WINDOWS /LIBPATH:<library path> test.obj kernel32.lib user32.lib
).Ini menciptakan MessageBox dengan tombol "OK" , dan utas yang mensimulasikan carriage return pers dari pengguna setelah 999 ms.
Ini
$
diganti dengan alamat bagian awalcode
oleh assembler / linker. Instruksi pertama adalahpush byte 0
(secara implisit, karena itu dihasilkan olehinvoke
), yang dikodekan sebagai6A 00
, yang sama dengan string yang diakhiri dengan null"j"
. Saya memanfaatkan ini saat meneleponMessageBox
danFindWindow
.sumber
Bash dengan Sistem X Window, 10 karakter
Buka jendela xterm, jalankan bash no-op
:
, setelah itu jendela xterm ditutup.Jika Anda ingin melihat jendela yang tidak berguna untuk sesaat, Anda dapat mengubah
:
kesleep 1
:sumber
Tcl / Tk, 131
Tcl / Tk, 136
Itu perlu dijalankan pada shell interaktif, baris demi baris dan pengguna tidak dapat menggerakkan mouse antara.
Akhirnya hasilkan suatu acara yang melepaskan tombol mouse ke atas.
Sebuah. Gambar sebelum benar-benar mengirimnya (sebelum menekan Enter)
b. Setelah Masukkan shell interaktif dan jendela aplikasi hilang begitu saja.
Catatan untuk tcl'ers: Mencoba melakukan hal yang sama langsung pada tombol X Tutup jendela menggunakan:
tetapi saya tidak berhasil.
sumber
Bash - echo (50 byte)
Tidak golf, 54 byte:
Golf, 50 byte
Saya tidak bisa menampilkan versi golf di sini karena karakter backspace sebenarnya mundur. Untuk versi golf, ubah karakter "^ H" menjadi satu backspace (^ H):
Catatan:
Aktivitas ini terlihat selama 2 detik.
Itu tidak menggunakan window manager atau semacamnya, tapi saya menganggap seni ASCII sebagai "gui". Jika Anda menjalankan perintah di jendela terminal, yang sekarang menjadi kasus biasa, aktivitas ditampilkan di jendela itu. Itu tidak membuka jendela baru.
Pengguna dapat menutup program lebih cepat dari pada penutupan otomatis dengan menekan "CTRL-C" dalam waktu 2 detik setelah memulai program. Pengguna yang lebih nyaman menggunakan GUI mereka dapat meletakkan kursor pada "X" kecil di sudut jendela terminal, dengan cepat, dan "klik" itu.
Program ditutup setelah 2 detik jika tidak ada gangguan dari pengguna. Pengguna hanya dapat membuatnya lebih cepat ditutup.
Apa yang menyebabkan program tutup adalah selesainya "gema" final.
sumber