Testquiz 17. November 202525. November 2025 Markus Giebeler Produkte Der ISA Dialog Manager ist ein mächtiges Werkzeug für die Dialogerstellung mit vielen Möglichkeiten und Optionen… Die ganze Vorrede steht bei dem Wissensquiz. Report a question What's wrong with this question? You cannot submit an empty report. Please add some details. Sie haben für das Quiz 3 Minuten Zeit. Die Zeit ist um! Testquiz Beispiele der verschiedenene Fragetypen zum Test des Designs 1 / 16 Kategorie: Oberflächendesign 1. Auf welchen Plattformen ist Ihr IDM-Dialog ablauffähig? Wählen Sie die korrekten Antworten aus! Windows MacOS AIX Linux Android Diese Antwort ist leider falsch. Diese Antwort ist richtig. Der ISA Dialog Manager ist in drei Versionen erhältlich: IDM für Windows; IDM für Motif (für unixartige Systeme mit X Window System); IDM für Qt (für Linux mit X Window System). Alle Details finden Sie in dieser Übersicht. 2 / 16 Kategorie: Regelsprache 2. Vervollständigen die Codestelle ??? um dem Listbox-Inhalt mit "Zeilennummer" zu versehen ohne Ereignisse zu erzeugen! on Listbox select { variable integer I; variable string NewContent; for I:= 1 this.itemcount do NewContent:= itoa(I)+": "+this.content[I]; ??? endfor } this.content[I] := NewContent; setvalue(this, .content, NewContent, I, false); setinherit(this, .content, I, NewContent); this:set(.content, NewContent, I); this.content[I] := NewContent; updatesceen(); this.content[I] ::= NewContent; Diese Antwort ist leider falsch. Diese Antwort ist richtig. this.content[I] := NewContent; Damit wird für jede Zeile ein .content-Changed-Ereignis erzeugt setvalue(this, .content, NewContent, I, false); Richtig der SendEvent-Parameter wurde mit false belegt. setinherit(this, .content, I, NewContent); Diese Schreibweise ist JavaScript und keine Regelsprache this:set(.content, NewContent, I); Der letzte Parameter ist standardmäßig true, was zu Erzeugung von .content-Changed-Ereignissen führt. this.content[I] := NewContent; updatesceen(); Zusätzlich zur Antwort 1) kommt es noch zum Flackern wegen der sofortigen Aktualisierung der Anzeige. this.content[I] ::= NewContent; So gehts richtig! ::= Ist die Kurzschreibweise für eine Zuweisung ohne Ereigniserzeugung. 3 / 16 Kategorie: Geometrie 3. Wodurch kann die Oberfläche in der Größe anpassbar gemacht werden? Wählen Sie alle korrekten Antworten aus! Pixelkoordinaten ermöglichen die Größenanpassung. Rasterkoordinaten ermöglichen die Größenanpassung Das layoutbox Objekte ordnet Kindobjekte automatisch an. Im notebook Objekt können Kindobjekte auf verschiedenen Reitern dargestellt werden. In einem festen Arbeitsbereich können Kindobjekte gut angeordnet werden. In einem virtuellen Arbeitsbereich können Kindobjekte gut angeordnet werden. Eine Referenzschriftart ermöglicht die Größenanpassung. Diese Antwort ist leider falsch. Diese Antwort ist richtig. Wenn die Oberfläche in der Größe anpassbar sein soll, müssen zwei Probleme gelöst werden: Die Größenänderung aller dargestellten Objekte. Wenn Objekte vergrößert werden, passen diese nicht mehr auf die Darstellungsfläche. Daher sind folgende Antworten richtig: Rasterkoordinaten: Durch die Änderung des Rasters kann die Größe von Objekten angepasst werden. layoutbox Objekt: Die Kindobjekte werden automatisch umgebrochen, wenn sie zu groß geworden sind. Virtueller Arbeitsbereich: Optionale Scrollbars stellen sicher, dass alle Kindobjekte in den sichtbaren Bereich gescrollt werden können. Referenzschriftart: Durch Ändern der Referenzschriftart kann im Zusammenspiel mit Rasterkoordinaten die Größe von Objekten einfach angepasst werden. Die folgenden Antworten sind falsch, da sie die zwei Probleme nicht oder nur sehr aufwändig lösen: Pixelkoordinaten: Zu aufwändig, da die Pixelkoordinaten aller Objekte angepasst werden müssen. notebook Objekt: Dieses Objekt bietet keine Automatik für Größenanpassungen an. Fester Arbeitsbereich: Wenn Objekte vergrößert werden und damit auch nach links oder unten verschoben werden, können diese außerhalb des sichtbaren Bereiches liegen. 4 / 16 Kategorie: Eclipse Plugins 4. Welche Unterstützung bietet das Eclipse-Plugin? Wählen Sie alle korrekten Antworten aus! Syntax-Hervorhebung Automatische Generierung von Regeln Automatische Formatierung des Quellcodes Dynamischer Inhaltsassistent Markierung von Problemstellen Generierung von C-Code Unterstützung von Dialog- und Modul-Fragmenten Diese Anwort ist leider falsch. Diese Antwort ist richtig. Die Eclipse-Plugins für den IDM sind ein mächtiges Werkzeug, um mit dem ISA Dialog Manager zu arbeiten. Assistenten (Wizards) zum Anlegen neuer IDM-Projekte und neuer Dateien (Dialoge, Module). Dynamischer Inhaltsassistent, der Ihnen während der Eingabe eine Liste mit den gültigen Ergänzungsmöglichkeiten (Kindobjekte, Attribute, Methoden, Schlüsselwörter, Aufzählungstypen) anzeigt. Das gewünschte Element können Sie per Mausklick aus der Liste übernehmen. In der Liste werden zusätzlich Kontextinformationen, z. B. die Datentypen von Funktions- und Methodenparametern, angezeigt. Markierung von Problemstellen (Fehler, Warnungen) durch Symbole am linken Rand. Ein komfortabler Editor mit Syntax-Hervorhebung, Automatische Formatierung des Quellcodes IDM-spezifische Ansichten wie Paketansicht, Modellhierarchie Schnellansichten: Bezeichnerliste mit allen Bezeichnern im Dialog oder Modul. Ein Bezeichner kann per Doppelklick in den Quellcode übernommen werden. Modellhierarchie des aktuell bearbeiteten Objekts mit der Möglichkeit zur Definition eines Modells zu springen. Ausführen der Simulation über eine Run- oder Debug-Konfiguration Kontextsensitive Hilfe, die Sie um eigene Inhalte erweitern können. Sprungfunktionen für eine schnelle Navigation im Quellcode 5 / 16 Kategorie: Eclipse Plugins 5. Wie kann ich im IDM Eclipse Plugin einfach zum Modell meiner Objektinstanz navigieren? Über das Kontektmenü Durch Auswahl eines Eintrags in der Ansicht "Modellhierarchie" Mit der Funktionstaste F5 Diese Antwort ist leider falsch Diese Antwort ist richtig Es gibt verschiedene Möglichkeiten. Über das Kontektmenü kann man "Jump to Model" wählen. In der Ansicht "Modellhierarchie" wird die komplette Hierarchie der Modelle dargestellt, so dass man hier leicht zum gewünschten Modell navigieren kann. 6 / 16 Kategorie: Eclipse Plugins 6. Wie kann ich meinen Bezeichner vervollständigen lassen? durch Drücken von STRG + Leertaste und Auswahl des gewünschten Elements über die Tastenkombination STRG + h über die Funktionstaste F3 Diese Antwort ist leider falsch Diese Antwort ist richtig Beim Drücken von STRG + Leertaste wird einMenü geöffnet, in dem der Benutzer aus einer Liste von passenden Objekten eine Auswahl treffen kann. STRG + h öffnet die IDM-Suche. 7 / 16 Kategorie: Graphischer Editor 7. Ordnen sie die Icons aus dem Applikationsteil der Werkzeugleiste den korrekten IDM-Klassen zu! 1) 2) 3) 4) 5) 6) Wählen Sie die korrekte Antwort aus! 1=document, 2=timer, 3=doccursor 4=function, 5=record, 6=message 1=record, 2=application, 3=variable, 4=rule, 5=import, 6=timer 1=variable, 2=application, 3=rule, 4=function, 5=use, 6=timer 1=application, 2=function, 3=record, 4=rule, 5=import ,6=timer Diese Antwort ist leider falsch. Diese Antwort ist richtig. Alles richtig. 8 / 16 Kategorie: Regelsprache 8. Ein modularisierter Dialog der mehrfach das Modul modwin.mod importiert welches eine Fensterinstanz "Mod Window" beinhaltet wird gestartet. a) Wie viele Fenster kann man nach dem Start sehen? b) Wie viele Module wurden geladen und gestartet? c) Wie viele Window-Default-Objekte existieren? // file: modular.dlg dialog D import ImpWinA "MODPATH:modwin.if"; import ImpExtra "MODPATH:modextra.if"; import ImpWinB "MODPATH:modwin.if"; window WiMain { .title "Dlg Window"; on close { exit(); } } // file: modwin.mod module ModWin export window Wi { .title "Mod Window"; } // file: modextra.mod module ModExtra export import ImpWinExtra "MODPATH:modwin.if"; export default window WINDOW { } Wählen Sie die korrekte Antwort aus! Jeder Import hat einen anderen Bezeichner weshalb es zu Mehrfachladung der gleichen Moduldatei kommt. a) Es erscheinen vier Fenster: "Dlg Window" und 3x "Mod Window". b) Module zu den Import ImpWinA, ImpWinB, ImpExtra und ImpWinExtra werden geladen und gestartet c) Default-Windows-Objekte gibt es ebenso vier. Dadurch das die Moduldatei "modwin.mod" schon im Dialog importiert wurde muss von ModExtra dies nicht erneut geladen werden. a) Drei Fenster: "Dlg Window" und 2x "Mod Window". b) Durch unterschiedliche Import-Namen ImpWinA und ImpWinB wird ModWin 2x geladen & gestartet. ModExtra 1x. c) Der Dialog erhält sein Window-Default-Objekt von ModWin. Die ModWin-Module haben jeweils ihren eigenes Window-Default-Objekt. Der IDM sorgt dafür das gleiche Module nur ein mal geladen werden. a) Zwei Fenster: "Dlg Window" und "Mod Window" b) Zwei Module ModExtra und ModWin c) Zwei Default Windows-Objekte Diese Antwort ist leider falsch. Diese Antwort ist richtig. Die hierarchische Beziehung der importierten Module spielt beim IDM eine Rolle. Wer sich hiervon lösen und eigentlich Antwort 3 angekreuzt hat sollte such den alternativen Import über use mal näher ansehen. Der alternative Import-Mechanismus über use würde für das einmalige Laden der Module automatisch sorgen und zu diesem leicht durchschaubaren Ergebnis führen. 9 / 16 Kategorie: Laufzeitumgebung und Fehleranalyse 9. Auf welchen Betriebssystemen bietet die ISA den IDM zur Ausführung von graphischen Dialogen an? Wählen Sie alle korrekten Antworten aus! Microsoft Windows 11 Apple iOS 12 RedHat Enterprise Linux 9 Apple macOS Seqouia Google Android 15 Vanilla Ice Cream Diese Antwort ist leider falsch. Diese Antwort ist richtig. Der IDM baut auf den Toolkits WIN32, Motif und Qt auf um Kunden die Entwicklung von Desktop-Anwendungen im professionellen Bereich zu unterstützen. Insofern zählen Smartphone-System nicht zur Zielplattform. 10 / 16 Kategorie: Regelsprache 10. Wie erweitere ich mein Modell eines Eingabefeldes MEtInput um einen pushbutton zum Löschen des Inhalts? Durch ein neues Pushbutton-Modell MPbClear.model edittext MEtInput {} model pushbutton MPbClear { .text "Clear"; on select { MEtInput.content := ""; } } Durch Ergänzung des Ursprungsmodell.model edittext MEtInput { model pushbutton MPbClear { .text "Clear"; on select { this.parent.content := ""; } } } Durch Einbettung in ein neues Modell.model groupbox MGbInput { MEtInput EtInput { } pushbutton PbClear { .text "Clear"; on select { this.parent.EtInput.content := ""; } } } Diese Antwort ist leider falsch. Diese Antwort ist richtig. Die Regel würde den edittext-Inhalt nur am Modell löschen! Das innenliegende model-Schlüsselwort ist falsch. Außerdem ist ein pushbutton als Kind nicht möglich. Korrekt ist ein neues erweitertes Modell aufzusetzen. 11 / 16 Kategorie: Graphischer Editor 11. Wie kann die mehrsprachige Text-Ressource TxMyTitle als Titel eines Fenster in der Eigenschaftenseite des IDMED angeben werden? Wählen Sie die korrekte Antwort aus! In "..."."Window Main" Mit $.${TyMyTitle} Natürlich mit &&TxMyTitle Oder vielleicht mit @ @TxMyTitle Diese Antwort ist leider falsch. Diese Antwort ist richtig. Das &-Zeichen dient zur Markierung des Mnemonic-Zeichen bei Aktions-Objekten wie Pushbutton oder Menuitem. ${TyMyTitle} könnte bei einer SHELL oder Makefile klappen, nicht aber im IDMED. 12 / 16 Kategorie: Optionen 12. Für was steht die Abkürzung DDM der Netzwerkoption? Wählen Sie die korrekte Antwort aus! DDM steht für Deutsches Dampflokomotiv-Museum DDM steht für Dynamic Device Mapping DDM steht für Distributed Dialog Manager Diese Antwort ist leider falsch. Diese Antwort ist korrekt. Es gibt zwar dieses Museum in Oberfranken, aber dies ist sicher keine Option des ISA Dialog Managers. Mit Hilfe der Netzwerk-Option des ISA Dialog Manager können Schnittstellenfunktionen der Anwendung auf einem anderen Rechner aufgerufen werden. Die Anwendung wird sozusagen verteilt, daher Verteilter Dialog Manager - Distributed Dialog Manager 13 / 16 Kategorie: Eclipse Plugins 13. Welche Optionen gibt es für das Eclipse-Plugin? Wählen Sie alle korrekten Antworten aus! Fragment Plugin Builder Plugin Dialog Outline Plugin Debugger Plugin Java to Regelsprache Converter IDM Code Mixer Code Formatter Plugin Diese Antwort ist leider falsch Diese Antwort ist richtig. Die Outline und Code-Formatierung sind Bestandteil des Eclipse Plugins. 14 / 16 Kategorie: Geometrie 14. Welche der folgenden Attribute können die Rastergröße ändern? groupbox Gb { .xraster 13; .font MyFont; .yauto 0; .real_yraster 15; .reffont MyFont; } Wählen Sie alle korrekten Antworten aus! Das Attribut .xraster setzt die Rasterbreite für die Kindobjekte, außer das Attribut .reffont ist gesetzt..xraster 13; Das Attribut .font setzt die Schriftart des Objektes, bestimmt aber keine Rastergröße..font MyFont; Das Attribut .yauto bestimmt wie bzw. wo das Objekt in seinem Vaterobjekt angebunden ist. Der Wert 0 besagt, dass das Objekt oben und unten angebunden ist..yauto 0; Mit dem Attribut .real_yraster kann die aktuelle Rasterhöhe abgefragt werden, ein Setzen ist nicht möglich. Allgemein gilt, dass Attribute, die mit der Vorsilbe real_ beginnen, ausschließlich der Abfrage von aktuellen Werten dienen, wenn das Objekt angelegt ist..real_yraster 15; Das Attribut .reffont bestimmt eine Schriftart, die zur Rastergrößenberechnung herangezogen wird. Die font Ressource besitzt eine Reihe von Attributen, um die Umrechnung in Pixel zu beeinflussen. .reffont MyFont; Diese Antwort ist leider falsch. Diese Antwort ist richtig. Das Attribut .xraster setzt die Rasterbreite für die Kindobjekte, außer das Attribut .reffont ist gesetzt. Das Attribut .reffont bestimmt eine Schriftart, die zur Rastergrößenberechnung herangezogen wird. Die font Ressource besitzt eine Reihe von Attributen, um die Umrechnung in Pixel zu beeinflussen. Das Attribut .font setzt die Schriftart des Objektes, bestimmt aber keine Rastergröße. Das Attribut .yauto bestimmt wie bzw. wo das Objekt in seinem Vaterobjekt angebunden ist. Der Wert 0 besagt, dass das Objekt oben und unten angebunden ist. Mit dem Attribut .real_yraster kann die aktuelle Rasterhöhe abgefragt werden, ein Setzen ist nicht möglich. Allgemein gilt, dass Attribute, die mit der Vorsilbe real_ beginnen, ausschließlich der Abfrage von aktuellen Werten dienen, wenn das Objekt angelegt ist. 15 / 16 Kategorie: Regelsprache 15. Welche Code-Ausschnitt zum durchlaufen eines Arrays ist in der IDM Regelsprache geschrieben? Wählen Sie alle korrekten Antworten aus! for ($i = 0; $i < count($array); $i++) { echo($array[$i]); } for I:=1 to Listbox.itemcount do print Listbox.content[I]; endfor for (let i = 0; i < array.length; i++) { console.log(array[i]); } variable list Array := ["go","fly","jump"]; variable string Action; foreach Action in Array do print Action; endfor vector array = {"VW", "BMW", "Opel"}; vector::iterator it; for (it = array .begin(); it != array .end(); ++it) cout << *it << "n"; Diese Antwort ist leider falsch. Diese Antwort ist richtig. Mit der Regelsprache wird eine Schleife so definiert: for I:=1 to Listbox.itemcount do print Listbox.content[I]; endfor oder variable list Array := ["go","fly","jump"]; variable string Action; foreach Action in Array do print Action; endfor Die anderen Codeschnipsel sind PHP, JavaScript und C++. 16 / 16 Kategorie: Eclipse Plugins 16. Kann man mit dem Eclipse Plugin Fehler im Dialog finden? Wählen Sie alle korrekten Antworten aus! Nein, Fehler treten erst zur Laufzeit auf Der Syntax-Checker kann einen Dialog oder ein Modul überprüfen und Fehler auflisten Mit der Option IDM Debugger Plugin lässt sich ein Dialog oder Modul zur Laufzeit in Eclipse debuggen. Diese Antwort ist leider falsch. Diese Antwort ist korrekt. Mit der Option IDM Debugger Plugin lässt sich ein Dialog oder Modul zur Laufzeit in Eclipse debuggen. Dabei kann man den Ablauf jederzeit mit einem Breakpoint unterbrechen, Variablen und Ausdrücke inspizieren und ggf. zur Laufzeit ändern. Features: Code-Editor mit Syntax-Hervorhebung, Quellcode-Formatierung und Inhaltsassistent mit Ergänzungsvorschlägen. Sprung zur Deklaration, zum Modell, zum übergeordneten Objekt usw. Ansichten für Dialogstruktur und Modellhierarchie. Einfaches Starten des IDM-Syntax-Checks und Springen zu Fehlerstellen. Konfigurierbare, erweiterbare und kontextsensitive Hilfe. 0% Quiz wiederholen