HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-187/)
-   -   Ein simpler texturierter Pushbutton (https://hx3.de/editing-scripting-187/simpler-texturierter-pushbutton-24876/)

radical1976 28.05.2015 17:35

Ein simpler texturierter Pushbutton
 
Hi zusammen,

ich habe mir in Sachen Dialogprogrammierung bei ArmA 3 bisher immer gut durch "learning by doing" oder durch gelegentlich vorhandene Hilfen im Netz selber helfen können.

Nun bin ich an einem Punkt angekommen, wo das nicht mehr geht. Die Aufgabenstellung ist einfach:

> Ein Pushbutton
> Kein Text, stattdessen ein Icon / eine Grafik mit 3 Ausführungen/States: Active/Normal, Hover/Selected und Disabled
> Kein unnötiges Flackern / Blinken, der Button soll nur bei Bewegung mit der Maus darüber die Grafik von Active/Normal auf Hover/Selected setzen. Muss auch nicht mit einem sanften Übergang sein

Was ich versucht habe:
> Control type: CT_SHORTCUTBUTTON
Über textureNoShortcut in Verbindung mit der Unterklasse ShortcutPos bekomme ich die Grafik wie definiert angezeigt, jedoch gibt es keinen Hover-Effekt bzw. kein Wechseln der Grafik. Nutze ich die animTextureXXXXX-Parameter wird nur ein Teil des Icons angeziegt - vollkommen wurst, was ich da in der Unterklasse für Werte setze (left/top/w/h).
> Control type: CT_ACTIVETEXT
Hier bekomme ich nicht einmal die Texture reingeladen (über die Parameter picture & text probiert), auch das verändern diverser Parameter brachte nichts.

Hat jemand eine Idee, wie man so einen Button erstellen könnte. Gibt es vielleicht einen Control type, den ich übersehe? :)

Danke im Voraus!

radical1976

Drunken Officer 28.05.2015 19:26

Unsichtbarer Button über die Grafik. Schon mal prbiert?

radical1976 28.05.2015 21:03

Hrm...ist definitiv eine Lösung - den Hover-Effekt dann mit Halbtransparenz erzielen.

Gar nicht dran gedacht - danke :)

P. S. Schade dass es scheinbar aus dem Hause BI nicht gibt, selbst HTML kann das seit über 15 Jahren :D

radical1976 30.05.2015 09:15

Hat wunderbar geklappt - danke noch mal für den Tip! Leider habe ich nun ein weiteres Problem:

Der ganze Dialog soll einen Laptop simulieren, der Basislaptop sieht derzeit so aus:
http://www11.pic-upload.de/thumb/30....399qdmis1p.png

Von diesem Basislaptop sollen weitere Dialoge über die jeweiligen Menüpunkte geöffnet werden (alle in einer separaten Datei gespeichert). Wenn ich nun über den Parameter action des Buttons den "Unterdialog" mit createDialog aufrufe verschwindet leider der Laptophintergrund :(

Kann ich innerhalb eines Dialogs überhaupt einen weiteren Dialog (als Child) darstellen?

Danke im Voraus!

radical1976

Edit: Was ich versucht habe
> Im Unterdialog bei onLoad ctrlShow[2500,true] (2500 ist die IDD) >> Laptop weg
> Im aufrufenden Dialog (findDisplay 2500) createDisplay 'Dialogname' >> passiert gar nichts :(

Drunken Officer 31.05.2015 09:00

stelle den Laptop als Display dar. (RscCut)
Wenn das Display steht, erstellst du den Dialog mit den Knöpfen.

Wenn du drückst, geht der Dialog weg und es geht ein neuer auf z.B. ein Waffenhändler.
Dort knallst du deine Listboxen oder was auch immer rein und stellst im gleiche Zug wieder die Knöpfe.

Also definiere die Knöpfe in einer oberen Klasse (incl. der Positionen), so dass du sie in jededm Dialog einfach nur abrufen must.

radical1976 31.05.2015 17:23

Hi Drunken Officer!

Noch mal danke für deine Hilfe :)

Bin einen etwas anderen Weg gegangen:
Laptop-Background & Menü in separate Dateien ausgelagert und diese dann in jedem "Unterdialog" unter controlsBackground als erstes inkludiert :)

radical1976


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:25 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119