Anpassen des Nachrichtenfensters (MessageBox)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Anpassen des Nachrichtenfensters (MessageBox)

      Hallo Forum,
      ich sende hin und wieder Texte an meine Box über das Webif. Hierbei geht es um kurze Infos. Was mich allerdings stört ist, dass gleich ein Fenster geöffnet wird das ca. 2/3 des Bildschirms ist. Das hätte ich gern kleiner, oder vielleicht auch dynamisch. Kann mir jemand sagen wo ich die Einstellungen hierzu finde ?

      Gruß

      Frank
    • @firstfacility

      Du hattest ursprünglich im Skinpartthread vom VU HD 1080 P gepostet,
      Die Beiträge aus 2 Threads wurden hier zusammengefasst.


      Gibt in dem genannten Skin einen Screen Messagebox.
      Wenn die Größe ändern willst, mußt den Screen in folgendem Stil als Skinpart anpassen.


      Quellcode

      1. <skin>
      2. <screen name="MessageBox" title="Message" position="center,center" size="1288,923" flags="wfNoBorder" backgroundColor="transparent" >
      3. <ePixmap pixmap="Vu_HD_1080P/Bg_EPG_view.png" zPosition="-2" position="0,0" size="1288,923" alphatest="off" />
      4. <widget source="Title" render="Label" position="title_mid_pos" valign="center" size="title_mid_size" font="BoldItalic; 58" backgroundColor="windowMainColorL" transparent="1" />
      5. <ePixmap pixmap="Vu_HD_1080P/icons/clock.png" position="1118,20" zPosition="1" size="31,31" alphatest="blend" />
      6. <widget source="global.CurrentTime" render="Label" position="1160,20" zPosition="1" size="100,34" font="Bold; 32" backgroundColor="windowMainColorL" halign="left" transparent="1">
      7. <convert type="ClockToText"></convert>
      8. </widget>
      9. <widget alphatest="blend" name="ErrorPixmap" pixmap="Vu_HD_1080P/icons/input_error.png" position="70,94" size="54,54"/>
      10. <widget alphatest="blend" name="QuestionPixmap" pixmap="Vu_HD_1080P/icons/input_question.png" position="70,94" size="54,54"/>
      11. <widget alphatest="blend" name="InfoPixmap" pixmap="Vu_HD_1080P/icons/input_info.png" position="70,94" size="54,54"/>
      12. <widget font="Regular;34" name="text" position="127,250" size="1050,500" halign="center" transparent="1" backgroundColor="windowBackground" />
      13. <widget name="list" position="127,760" size="1050,100" font="Regular;34" itemHeight="50" backgroundColor="windowBackground" scrollbarMode="showOnDemand" transparent="1" scrollbarWidth="6" scrollbarSliderBorderWidth="0" scrollbarGap="20" scrollbarKeepGapColor="1" />
      14. </screen>
      15. </skin>
      Alles anzeigen
      Der Screen basiert auf einer Hintergrundgrafik (BG_EPG_View.png), die solltest als erstes in der gewünschten Größe neu erstellen und dann die weiteren Größenanpassungen vornehmen .......

      Deinen fertigen Skinpart kopierst auf die Box in das Verzeichnis /VUHD1080P/allScreens/ und aktivierst den Skinpart über Menue - VTI - Einstellungen VUHD1080P.

      Vereinfachen kann man sich die Skinbearbeitung mit dem Tool OpenSkinDesigner. Der funktioniert allerding zumindest bei mir nicht mit dem Standard Skin VUHD1080P.

      Vielleicht auch mal hier umsehen:
      hilfe thread für eigenskinner
      Nehmt das Leben nicht zu ernst, ihr kommt eh nicht lebend raus!

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von ditschi1691 ()

    • Du kannst die MessageBox auch dynamisch abhängig von der Message machen.
      Anbei ein Beispiel dazu, einfach mal rumprobieren, dann bekommst den Dreh raus:

      Quellcode

      1. <screen name="MessageBox" title="Message" position="510,0" size="900,1080" flags="wfNoBorder" backgroundColor="windowBackground">
      2. <!-- Background Title -->
      3. <eLabel position="0,0" size="900,60" backgroundColor="background2" zPosition="-1" />
      4. <!-- Title -->
      5. <widget source="Title" render="Label" position="75,0" valign="center" size="825,60" font="font_smallWindow_title" transparent="1" />
      6. <!-- Title Seperator -->
      7. <eLabel name="Seperator" position="0,60" size="900,1" zPosition="5" backgroundColor="seperator" />
      8. <!-- Message Background -->
      9. <!--<eLabel position="0,60" size="900,1020" backgroundColor="background" zPosition="-1" />-->
      10. <!-- Message Icons -->
      11. <widget alphatest="blend" name="ErrorPixmap" pixmap="Meins/media/logos/message/attention.png" position="10,0" size="60,60" />
      12. <widget alphatest="blend" name="QuestionPixmap" pixmap="Meins/media/logos/message/question.png" position="10,0" size="60,60" />
      13. <widget alphatest="blend" name="InfoPixmap" pixmap="Meins/media/logos/message/info.png" position="10,0" size="60,60" />
      14. <!-- Message Text -->
      15. <widget backgroundColor="windowBackground" font="font_standard_small" name="text" position="20,70" size="860,0" />
      16. <!-- Message Buttons -->
      17. <widget itemHeight="50" name="list" font="font_list" textOffset="10,0" position="30,142" size="900,480" transparent="1" />
      18. <applet type="onLayoutFinish">
      19. # this should be factored out into some helper code,but currently demonstrates applets.
      20. from enigma import eSize,ePoint
      21. orgwidth=self.instance.size().width()
      22. orgheight=self.instance.size().height()
      23. orgpos=self.instance.position()
      24. textsize=self["text" ].getSize()
      25. # y size still must be fixed in font stuff...
      26. textsize=(textsize[0 ] + 70,textsize[1 ] + 110)
      27. offset=0
      28. if self.type == self.TYPE_YESNO:
      29. offset=100
      30. wsizex=textsize[0 ] + 0
      31. wsizey=textsize[1 ] + offset
      32. if (450 > wsizex):
      33. wsizex=450
      34. wsize=(wsizex,wsizey)
      35. # resize
      36. self.instance.resize(eSize(*wsize))
      37. # resize label
      38. self["text" ].instance.resize(eSize(*textsize))
      39. # move list
      40. listsize=(wsizex - 0,100)
      41. self["list" ].instance.move(ePoint(0,textsize[1 ]))
      42. self["list" ].instance.resize(eSize(*listsize))
      43. # center window
      44. newwidth=wsize[0 ]
      45. self.instance.move(ePoint(orgpos.x() + (orgwidth - newwidth)/2, orgheight / 2 - wsize[1] / 2 - 100))
      46. </applet>
      47. </screen>
      Alles anzeigen