Inspiriert von der nutzlosesten Maschine aller Zeiten .
Schreiben Sie das kürzeste Programm, das Folgendes ausführt:
- Erstellen Sie ein grafisches Fenster, schließen Sie das Fenster sofort und beenden Sie das Programm.
- Tun Sie dies auf visuell sichtbare Weise. Wie der "Arm", der den Schalter in der Maschine drückt, muss das Programm eine visuelle Methode in der GUI verwenden, um sich selbst zu schließen.
- Diese visuelle Methode muss dazu führen, dass das Programm geschlossen wird. Sie können es nicht einfach als etwas auf der Seite zeigen (obwohl es andere Dinge auf der Seite geben kann)
Hinweis:
- Das Programm muss nicht lange genug sichtbar sein, damit die sichtbare Aktivität von einem Menschen gesehen werden kann, solange die Aktivität die Ursache für das Schließen ist.
- Das Fenster muss eine GUI sein (muss ein grafisches Fenster anzeigen, das die sichtbare Exit-Methode enthält).
- Die visuelle Methode muss etwas sein, was der Benutzer tun könnte, wenn sie nicht automatisch durchgeführt würde. Erklären Sie, was im Code geändert werden muss, damit der Benutzer dies tun kann (Dank an Iszi).
- Das Programm muss geschlossen werden, wenn der Benutzer nicht stört. Wenn der Benutzer jedoch eingreift, muss es nicht automatisch geschlossen werden.
- Bitte geben Sie eine Erklärung an, warum das Programm geschlossen wird.
Beispiel: Ein Fenster mit einer Schaltfläche, auf die programmgesteuert geklickt wird und auf der ein kurzer Codeausschnitt ausgeführt wird, der das Programm schließt.
Antworten:
TI-Basic, 3 Bytes
Erläuterung
DispGraph
Zeigt das Diagramm an (ein grafisches Fenster):1
Simuliert eine Presse1
(durch Speichern1
aufAns
im letzten Schritt eines Programms), die den Rechner wieder zum Startbildschirm nimmt. Ein Benutzer könnte das Gleiche tun.quelle
:
und verwenden1
). Dateisystem-Overhead und Tabellen sind offensichtlich nicht in der Zählung enthalten.Rubin mit Schuhen , 110
Macht einen kleinen Pfeil, der eine "Schließen" -Taste drückt. (Durch manuelles Drücken der Schließen-Taste wird auch das Fenster geschlossen.)
quelle
Windows Batch, 4 Bytes
Speichern Sie das folgende Programm in einer
.bat
Datei in Ihrem Benutzerordner (C: \ Benutzer \ Benutzername):Bei der Ausführung über die Eingabeaufforderung Start, Ausführen wird ein neues Fenster geöffnet, der Befehl wird
Exit
eingegeben und ausgeführt.quelle
Exit
Das Fenster wird geschlossen, bevor die Batchdatei abgeschlossen ist.JavaScript:
133117(Sie müssen Popups in Ihrem Webbrowser zulassen, damit dies funktioniert.)
Code-Golf:
Quelle: http://jsfiddle.net/gt2t8/2/
quelle
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 ,
54Zeigen Sie das Diagramm an, drücken Sie 1, schließen Sie das Diagramm und kehren Sie nach Hause zurück.
quelle
x86 / Win32-Assembly (
337310271 Bytes)Wird mit MASM32 (
ml /c /coff /Gz /I<include path> test.asm
/link /SUBSYSTEM:WINDOWS /LIBPATH:<library path> test.obj kernel32.lib user32.lib
) zusammengebaut.Es wird eine MessageBox mit der Schaltfläche "OK" und einem Thread erstellt, der eine Wagenrücklaufpresse des Benutzers nach 999 ms simuliert.
Das
$
wird durch die Adresse am Anfang descode
Abschnitts durch den Assembler / Linker ersetzt. Die erste Anweisung ist einepush byte 0
(implizit, da sie von der generiert wirdinvoke
), die als codiert ist6A 00
und der nullterminierten Zeichenfolge entspricht"j"
. Ich nutze dies beim AnrufMessageBox
undFindWindow
.quelle
Bash mit X Window System, 10 Zeichen
Öffnen Sie ein xterm-Fenster, führen Sie das Bash-No-Op aus
:
. Danach wird das xterm-Fenster geschlossen.Wenn Sie das nutzlose Fenster für eine Sekunde sehen möchten, können Sie Folgendes ändern
:
insleep 1
:quelle
Tcl / Tk, 131
Tcl / Tk, 136
Es muss zeilenweise auf einer interaktiven Shell ausgeführt werden, und der Benutzer kann die Maus nicht dazwischen bewegen.
Generieren Sie schließlich ein Ereignis, bei dem die Maustaste losgelassen wird.
ein. Bild vor dem eigentlichen Senden (vor dem Drücken der Eingabetaste)
b. Nach Enter betreten Sie die interaktive Shell und die App-Fenster sind einfach verschwunden.
Hinweis für Benutzer: Es wurde versucht, dasselbe direkt auf der X-Schließen-Schaltfläche des Fensters zu tun.
aber ich war nicht erfolgreich.
quelle
Bash - Echo (50 Bytes)
Nicht Golf, 54 Bytes:
Golf, 50 Bytes
Ich kann die Golfversion hier nicht genau anzeigen, da die Rücktaste tatsächlich die Rücktaste ist. Ändern Sie für die Golfversion beide "^ H" in einzelne Rücktaste (^ H):
Anmerkungen:
Die Aktivität ist 2 Sekunden lang sichtbar.
Es wird kein Fenstermanager oder ähnliches verwendet, aber ich zähle die ASCII-Grafik als "GUI". Wenn Sie den Befehl in einem Terminalfenster ausführen, was jetzt der übliche Fall ist, wird die Aktivität in diesem Fenster angezeigt. Es öffnet sich kein neues Fenster.
Der Benutzer kann das Programm früher als das automatische Schließen schließen, indem er innerhalb von 2 Sekunden nach dem Starten des Programms "STRG-C" drückt. Benutzer, die mit ihrer GUI besser vertraut sind, können den Cursor schnell auf das kleine "X" in der Ecke des Terminalfensters setzen und darauf "klicken".
Das Programm wird nach 2 Sekunden geschlossen, wenn der Benutzer nicht stört. Der Benutzer kann nur veranlassen, dass es früher geschlossen wird.
Was das Programm zum Schließen bringt, ist die Vervollständigung des letzten "Echos".
quelle