Seite 1 von 2

Schriftgröße in Menüs ändern

Verfasst: 21.12.2019 08:54
von stevie1401
Ich versuche gerade die Schriftgröße in PopupImageMenüs zu ändern.
Mit Setgadgetfont(#meinmenu,FontId(font) funktioniert es leider nicht.
Hat jemand eine Idee?

Re: Schriftgröße in Menüs ändern

Verfasst: 21.12.2019 10:12
von Bisonte
Ist meines Wissens nur mit API unter Windows möglich (Originalen Menues) oder per selbst erstellten Menues (Window mit z.b. CanvasGadget).
Für die API Geschichte hat RASHAD im englischen Forum was gepostet.

Re: Schriftgröße in Menüs ändern

Verfasst: 21.12.2019 10:28
von Kiffi
@Bisonte: SpiderBasic

Re: Schriftgröße in Menüs ändern

Verfasst: 21.12.2019 17:00
von Bisonte
:oops: Man sollte vor dem Posten schon mind. ein Liter Kaffeedurchfluss gehabt haben... verdammt ;)

Re: Schriftgröße in Menüs ändern

Verfasst: 21.12.2019 22:20
von ccode_new
Hallo!

Wie kann man das CSS eines von SpiderBasic erstellten Menüs setzen ?

Zum Beispiel so:

Code: Alles auswählen

CreateImage(0, 16, 16)
If StartDrawing(ImageOutput(0))
  Box(0, 0, 16, 16, RGB(255, 0, 0)) ; red box
  StopDrawing()
EndIf

CreateImage(1, 16, 16)
If StartDrawing(ImageOutput(1))
  Box(0, 0, 16, 16, RGB(0, 255, 0)) ; green box
  StopDrawing()
EndIf

CreateImage(2, 16, 16)
If StartDrawing(ImageOutput(2))
  Box(0, 0, 16, 16, RGB(0, 0, 255)) ; blue box
  StopDrawing()
EndIf

If CreatePopupImageMenu(0)
  MenuItem(1, "Rot", ImageID(0))
  MenuItem(2, "Grün", ImageID(1))
  MenuItem(3, "Blau", ImageID(2))
EndIf

Procedure GadgetEvents()
  If EventGadget() = 0 And EventType() = #PB_EventType_RightClick
    Debug "here"
   
    DisplayPopupMenu(0, WindowID(0))
    
    ;Die Anweisungen müssen nach dem Anzeigen des Menüs erfolgen.
    
    ! $("#"+v_menue.id).css("background", "pink");
    ! $("#"+v_menue.id).css("color", "brown");
    ! $("#dijit_MenuItem_1").css("color", "green");
    ;Hier wird die Anzeige-Größe in Pixel gesetzt.
    ! $("#"+v_menue.id).css("font-size", "18px");
    ;So setzt man z.B. einzelne Menüeinträge
    ! $("#dijit_MenuItem_1").css("font-size", "32px");

  EndIf
EndProcedure

Procedure MenuEvents()
  Debug EventMenu()
EndProcedure

If OpenWindow(0, 100, 100, 300, 260, "PopupMenu example", #PB_Window_TitleBar)
 
  ListIconGadget(0, 10, 10, 280, 240, "Tools", 200)
  AddGadgetItem(0, -1, "Hammer")
  AddGadgetItem(0, -1, "Screwdriver")
 
  liste = GadgetID(0)
  ;Hier wird die interne ID ermittelt.
  menue = MenuID(0)
 
 
  ! $(v_liste.div).find(".dgrid-content.ui-widget-content").css("color", "red");
  ! $(v_liste.div).find(".dgrid-content.ui-widget-content").css("background", "yellow");
 
  !alert(v_liste.div);
  ;Ein Menü ist kein DIV-Objekt.
  !alert(v_menue.id);
 
  BindEvent(#PB_Event_Menu, @MenuEvents())
  BindEvent(#PB_Event_Gadget, @GadgetEvents())
 
EndIf

Re: Schriftgröße in Menüs ändern

Verfasst: 22.12.2019 14:30
von stevie1401
Erst einmal vielen dank für deine Mühen!
Leider funktioniert dein Beispiel bei mir nicht.
Das Menü:
If CreatePopupImageMenu(0)
MenuItem(1, "Rot", ImageID(0))
MenuItem(2, "Grün", ImageID(1))
MenuItem(3, "Blau", ImageID(2))
EndIf

erscheint bei mir gar nicht.
Stattdessen bekomme ich die Meldungen:, [object HTMLDivElement]

und
dijit_Menu_0



Diese Seite daran hindern weitere Dialoge zu öffnen.




Getestet mit Googel Chromium und Firefox.

Re: Schriftgröße in Menüs ändern

Verfasst: 22.12.2019 15:00
von ccode_new
Hi!

Markiere mal die Zeilen:

!alert(v_liste.div);
;Ein Menü ist kein DIV-Objekt.
!alert(v_menue.id);
und mache einen Rechtsklick mit deiner Computermaus/Touchpad/Touchscreengeste, etc.
Dann wähle "Insert comments" aus.
(Oder gehe über das Menü./ Oder setze einfach so ein Semikolon vor diese Zeilen.)

Eigentlich sollte es funktionieren.

Bei wem funktioniert es so auch nicht ? (Melden)

Re: Schriftgröße in Menüs ändern

Verfasst: 22.12.2019 23:41
von stevie1401
Ich habe es an 4 Rechnern versucht, Windows und Linux, Spider 2.22 und 2.30. Firefox, Chrome, Chromium. Immer das gleiche...

Re: Schriftgröße in Menüs ändern

Verfasst: 23.12.2019 00:40
von ccode_new
Das kann ich leider nicht nachvollziehen.

An was scheitert es ?

Mache einen Rechtsklick auf das ListView und was passiert dann ?

Oder wird bei dir die Seite nicht geladen ?

Achte bitte auch darauf keine Kommentare nach Anweisungen >> mit einem Semikolon am Ende << einzufügen.

Re: Schriftgröße in Menüs ändern

Verfasst: 23.12.2019 12:08
von Kiffi
ccode_new hat geschrieben:Bei wem funktioniert es so auch nicht ? (Melden)
funktioniert hier.