AW: Warum ist ein Radiobutton rund ?
Als die Bedienelemente für Oberflächen entwickelt wurden, sollte ein Unterschied zwischen Elementen dargestellt werden, die entweder Mehrfach-Auswahlen ermöglichen sollten oder die ein Element aus mehreren festlegen sollten. Also Letzteres: Auswahl des Geschlechts - nur eines soll gehen: bei Wechsel der Auswahl verschwindet die Markierung des zuvor gewählten Items. Das wird seither, seit nun knapp 30 Jahren mit runden sog. Radiobuttons gemacht. Wichtig hierbei: Die Zustände sind voneinander abhängig. Denn: ein Klick auf einen Radiobutton soll nicht nur dessen neuen Zustand anzeigen sondern muss ggf. auch den Zustand der umliegenden Radiobuttons negieren.
Das Gegenteil sind Checkboxen, eckig, mit Kreuz bei Auswahl und heute meist mit einem dritten Zustand (grau) versehen. Diese sind im Kern voneinander unabhängig. Und so werden sie auch benutzt. Beispiel: Münzarten, die man gerade in der Geldbörse hat. Hier müßte man entwicklungsseitig mit allen Kombinationen rechnen (keine Münzen bis hin zu allen Münzarten mit allen Zwischenzuständen). Unabhängig davon, ob ich 1 Eur-Münzen habe, kann ich auch 5 Cent-Münzen haben - und ebenso unabhängig wären hier auch die Checkboxen anwählbar.
Die Frage des technischen Aufbaus und des des Aussehens (bzw. des Speicherortes der Optik) hängt von der Plattform ab. Moderne SW-Entwicklung trennt die Optik, die Konstruktion und das Verhalten (dieser Aufbau bzw. Trennung wird als Model-View-Controller-Pattern bezeichnet). Unter Windows lagen irgendwo tatsächlich grafische Ressourcen oder 2D-Anweisungssets (1 Pixel breite graue Linien, 1 Pixel breite dunklere Linien für den Schatten etc.). Mit den skinbaren Oberflächen sind diese statischen Darstellungen variabel belegbaren Bereichen gewichen. Sonst könnte man mit Desktop-Schemas die Darstellung von Programmen ja nicht ändern.
Bei der Plattform Browser hängt es vom Framework ab: Entwickler greifen für manche Bedienelemente teilweise an die Betriebssystem-Ressourcen durch. Ein Radiobutton via Browser-Formular entspricht dann technisch eigentlich einem, wie er auch in Word in einer Box sein könnte. Bei diesem Weg sehen die Bedienelemente auf einem Mac auch wie Mac-like aus und unter Windows eben Windows-like. Mir fällt da namentlich das SWT-Framework für die Java-Programmierung ein - das ermöglicht über diesen Weg Native-Looks für diverse Plattformen.
Andere Frameworks ermöglichen, dass alle Oberflächen auf allen Plattformen nach dem eigenen Weg aussehen (aber auf allen Plattformen damit natürlich optische Fremdkörper sind). Wäre z.B. bei Flash der Fall. Dort ist es eher üblich, dass man ein eigenes Design entwickelt - und so siehts beim Aufrufer dann auch aus. Egal ob er am Linux-, Win- oder Mac-System sitzt. Je nachdem, was der Auftraggeber braucht, ist alles möglich.
Bei den Frameworks für Browser (AJAX-Zeugs) wird die Optik teilweise aus Grafiken zusammengesetzt. Seit es geht, wird manchmal auch mit SVG-Anweisungen gearbeitet. Letzteres hat den Vorteil, dass solche Oberflächen optisch stufen- und endlos skalierbar sind, ohne treppig zu werden.
Unter Windows fällt mir dazu die Animation des Kopierbefehls ein: Dauert Kopieren etwas länger, flattert andauernd ein weißes Blatt zwischen zwei Ordnern hin und her. Das ist tatsächlich ein kleines AVI-Video, 10 KByte groß - genauso eine sog. "Ressource" wie die Form der Radiobuttons. Solche Ressourcen wie auch Icons sind unter Windows aus den den EXE-, DLL-, OCX-Dateien auch extrahierbar - und ersetzbar. Ich vermute in die Richtung geht Deine Frage - kann man die Optik nicht manipulieren. Grundsätzlich: JA. Sogar bei fertigen Kompilaten wie Windows-Programmen. Hier stehen die Ressourcen in speziellen Bereichen, die von Ressourcen-Editoren ausgelesen und auch neu gesetzt werden können (kann allerdings auch mal schief gehen, z.B. wenn Programme ihre eigene Dateigröße als Prüfsumme nutzen).
Ein Programm mit dem Du an viele Windows-Resource rankommst, ist z.B. hier:
Resource-Grabber für Windows 95 und NT | c't. Alten Borland-Express-Versionen lagen ähnliche Tools bei ("Ressource-Workshop" hieß das, lag auch als Einzelinstallation auf vielen Heft-CD) und Visual Studio hatte auch sowas. Vermutlich kann man das bei Microsoft irgendwo runterladen, meine Installation hat's gerade nicht mehr.
Das oben genannte Zeug hilft Dir bei Browser-Ressourcen nichts - da musst Du die jeweiligen Bibliotheken durchsuchen.
Soweit so allgemein.