MenuBar - Separator/Divider entfernen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

MenuBar - Separator/Divider entfernen

Beitrag von Lambda »

Zwischen Menüleiste und Fensterinhalt wird eine Trennlinie dargestellt die ich zuvor noch garnicht bemerkt hatte.

Kann diese durch ändern der Styles entfernt werden?

lg
Zuletzt geändert von Lambda am 03.08.2012 03:27, insgesamt 1-mal geändert.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MenuBar - Separator/Devider entfernen

Beitrag von RSBasic »

@cOoki3druqs
Du kannst das Menü in einem ContainerGadget setparen, also mit SetParent. Du brauchst nur anschließend die Höhe des Menüs ermitteln und etwas verringern, so dass die Trennlinie nicht mehr sichtbar ist.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: MenuBar - Separator/Devider entfernen

Beitrag von Lambda »

Die Idee ist gut, nur leider will das Menü da nicht sein. :freak:

Der Container bleibt unterhalb des Menüs und das Menü selbst da wo es immer ist.

Code: Alles auswählen

SetParent_(MenuID(#..), GadgetID(#Container...)) 
hat leider keinen Effekt. Eine "elegantere" Methode wär narülich noch schöner. ^^ Kann dieser Devider nicht entfernt werden?
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MenuBar - Separator/Devider entfernen

Beitrag von RSBasic »

http://www.rsbasic.de/aktualisierung/wi ... chieben.pb

Noch ne kleine Zusatzfrage: Wann entsteht diese Trennlinie? Wenn du eine ToolBar erstellt hast oder ist sie von Anfang an da?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: MenuBar - Separator/Devider entfernen

Beitrag von Lambda »

Von Anfang an, ToolBar hatte ich bereits geprüft, aber bei dieser wird der Devider entfernt.

Genau die letztige Lösung hatte ich bereits gefunden. ^^ Aber das ist leider etwas zu provisorisch und das Fenster verliert auch den Fokus.

Das Menü ist selbstgezeichnet, aber der Devider scheint nicht im Bereich des Menüs zu liegen und wird auch durch überzeichnen beim nächsten Repaint wieder freigelegt. :|
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MenuBar - Separator/Devider entfernen

Beitrag von RSBasic »

Welches Betriebssystem verwendest du? XP? Mit aktivem Skin (wenn ja, welches Design?) oder klassisch?
Was meinst du mit "Menü ist selbstgezeichnet"?
Kannst du mal einen vollständigen Screenshot vom folgenden Fenster erstellen?

Code: Alles auswählen

If OpenWindow(0, 0, 0, 200, 100, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  If CreateMenu(1, WindowID(0))
    MenuTitle("Datei")
    MenuTitle("Bearbeiten")
    MenuTitle("Ansicht")
    MenuTitle("Hilfe")
  EndIf
  
  Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Einfach so, damit ich das komplett sehen und nachvollziehen kann.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: MenuBar - Separator/Devider entfernen

Beitrag von Lambda »

Windows 7 mit Aero. XP-Skin aktiv.

Aber Betriebssystem ist scheinbar wurscht, da ich es auf XP (vPC) getestet hab und zum selben Ergebnis komm.


Verwende ein etwas modifizierten Code. Vielleicht könnte man die Linie doch überzeichnen. :|
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MenuBar - Separator/Devider entfernen

Beitrag von RSBasic »

Also bei mir sieht es mit dem von dir verlinkten Code so aus:
Bild

Da gibt es keine Trennlinie.
Wenn ich ein normales Menü erstelle, dann sieht es so aus:
Bild

Da gibt es zwar diese Trennlinie, aber das Menü sieht ganz anders aus, als das Menü in deinem Screenshot.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: MenuBar - Separator/Devider entfernen

Beitrag von Lambda »

Doch, im ersten Beispiel exisitert diese Linie. Die ist nur erst sichtbar wenn Menü und Fensterfarbe geändert sind da diese den 3DFACE Wert hat.

Versuch mal die Farben im ersten Beispiel zu ändern, dann siehst du sie. ^^
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: MenuBar - Separator/Divider entfernen

Beitrag von Lambda »

Ich wollte nur nochmal darauf hinweisen dass das Problem immernoch besteht. :D
Antworten