neues fenster durch buttongadget

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Sunny
Beiträge: 290
Registriert: 19.02.2009 06:02

neues fenster durch buttongadget

Beitrag von Sunny »

ich war mir nich ganz sicher, ob ich das in den bug-bereich, oder hier rein poste, aber da der befehl ja sowieso falsche parameter hat, kommt das einfach mal hier rein...

Code: Alles auswählen

OpenWindow(0,0,0,300,300,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)

ButtonGadget(0,10,10,200,100,"Button",16711920)

Repeat
  event=WaitWindowEvent()
  
Until event=#PB_Event_CloseWindow

End
Ich was ja nich, ob da bei euch vieleicht was anderes passiert, aber bei mir is das buttongadget dann in einem neuen fenster...

das is mir mal so aufgefallen...

man könnte sich ja mal ein paar andere werte ausprobieren und gucken, was dabei rauskommt... ^^
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: neues fenster durch buttongadget

Beitrag von STARGÅTE »

Bild

Also ein Bug ist es nicht,
wohl er ein Feature.

Wäre nett wenn du die Quelle der Zahl 16711920, bzw. deren Konstanten-Kombination.

Es sieht etwas nach einem MDI-Gadget aus.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
Mok
BotHunter
Beiträge: 1484
Registriert: 26.12.2005 14:14
Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit
Wohnort:   

Re: neues fenster durch buttongadget

Beitrag von Mok »

STARGÅTE hat geschrieben:Wäre nett wenn du die Quelle der Zahl 16711920, bzw. deren Konstanten-Kombination.
Mit 16711921 gehts auch...
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Benutzeravatar
Sunny
Beiträge: 290
Registriert: 19.02.2009 06:02

Re: neues fenster durch buttongadget

Beitrag von Sunny »

naja also ich hatte mir ein prog zurechtgebastelt, das ein hyperlinkgadget enthielt und später dachte ich mir, dass ein buttongadget (aus optischen gründen) besser aussieht.

das hyperlinkgadget hatte als farbwert RGB(240,0,255) (hat den wert: 16711920).

als ich dann das hyperlinkgadget in ein buttongadget geändert hab, habe ich vergessen, den farbwert rauszunehmen und dabei hab ich das dann mal so mitbekommen...

mir is außerdem grade was aufgefallen.
wenn man den wert 16711923 nimmt, erscheint in dem (mid-)fenster kein buttongadget, sondern ein checkboxgadget ^^
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Re: neues fenster durch buttongadget

Beitrag von Jilocasin »

Dein 16711920 ist binär 111111110000000011110000, wobei jedes "aktivierte" 1-er Bit für irgendeinen zusätzlichen Parameter steht. Die Standardflags von PB gehen bis Bit 14 (von hinten gezählt). Was links davon ist, weiß wohl nur Microsoft.. bzw lässt sich eben durch Ausprobieren herausfinden. oder man findet passende Style-API-Konstanten, wie BS_[blablabla] dafür.
Bild
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Re: neues fenster durch buttongadget

Beitrag von GPI »

Für Windows sind Buttons etc. auch nur "Fenster" - du benutzt hier einen undokumentieren Style-Wert für gadgetbutton - von daher ist das Ergebnis rein zufällig. Es ist sogar möglich das in zukünftigen PB-Versionen nichts passiert bis zum Fehler beim Debugger etc. alles drin.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Benutzeravatar
Vera
Beiträge: 928
Registriert: 18.03.2009 14:47
Computerausstattung: Win XP SP2, Suse 11.1
Wohnort: Essen

Re: neues fenster durch buttongadget

Beitrag von Vera »

Hi Sunny,

was für eine witzige Idee, einfach irgendeinen Zufallswert als Flag zu verwenden, das kann man vielleicht mal spaßig umsetzen :mrgreen:

16711922 - incl. Checkbox
1671192 - Button mit einzelnem Slider
1671193 - runde Checkbox
167119 - unsichbarer Button mit geheimer Checkbox
6 - 3-phasen Checkbox


apropos - das geht nur mit WIN, Linux scheint diese Angaben einfach zu ignorieren /:-> [schade aber auch]

@ Jilocasin
danke für den Hinweis

Grüße ~ Vera
°
<°)))o><
~~~~~~~~~
echo "Don't worry"
echo "Keep quiet"
@echo off
format forum:\
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: neues fenster durch buttongadget

Beitrag von mk-soft »

Mal unter WinAPI CreateWindow schauen...
WS_BORDER Creates a window that has a thin-line border.
WS_CAPTION Creates a window that has a title bar (includes the WS_BORDER style).
WS_CHILD Creates a child window. This style cannot be used with the WS_POPUP style.
WS_CHILDWINDOW Same as the WS_CHILD style.
WS_CLIPCHILDREN Excludes the area occupied by child windows when drawing occurs within the parent window. This style is used when creating the parent window.
WS_CLIPSIBLINGS Clips child windows relative to each other; that is, when a particular child window receives a WM_PAINT message, the WS_CLIPSIBLINGS style clips all other overlapping child windows out of the region of the child window to be updated. If WS_CLIPSIBLINGS is not specified and child windows overlap, it is possible, when drawing within the client area of a child window, to draw within the client area of a neighboring child window.
WS_DISABLED Creates a window that is initially disabled. A disabled window cannot receive input from the user.
WS_DLGFRAME Creates a window that has a border of a style typically used with dialog boxes. A window with this style cannot have a title bar.
WS_GROUP Specifies the first control of a group of controls. The group consists of this first control and all controls defined after it, up to the next control with the WS_GROUP style. The first control in each group usually has the WS_TABSTOP style so that the user can move from group to group. The user can subsequently change the keyboard focus from one control in the group to the next control in the group by using the direction keys.
WS_HSCROLL Creates a window that has a horizontal scroll bar.
WS_ICONIC Creates a window that is initially minimized. Same as the WS_MINIMIZE style.
WS_MAXIMIZE Creates a window that is initially maximized.
WS_MAXIMIZEBOX Creates a window that has a Maximize button. Cannot be combined with the WS_EX_CONTEXTHELP style. The WS_SYSMENU style must also be specified.
WS_MINIMIZE Creates a window that is initially minimized. Same as the WS_ICONIC style.
WS_MINIMIZEBOX Creates a window that has a Minimize button. Cannot be combined with the WS_EX_CONTEXTHELP style. The WS_SYSMENU style must also be specified.
WS_OVERLAPPED Creates an overlapped window. An overlapped window has a title bar and a border. Same as the WS_TILED style.
WS_OVERLAPPEDWINDOW Creates an overlapped window with the WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, and WS_MAXIMIZEBOX styles. Same as the WS_TILEDWINDOW style.
WS_POPUP Creates a pop-up window. This style cannot be used with the WS_CHILD style.
WS_POPUPWINDOW Creates a pop-up window with WS_BORDER, WS_POPUP, and WS_SYSMENU styles. The WS_CAPTION and WS_POPUPWINDOW styles must be combined to make the window menu visible.
WS_SIZEBOX Creates a window that has a sizing border. Same as the WS_THICKFRAME style.
WS_SYSMENU Creates a window that has a window-menu on its title bar. The WS_CAPTION style must also be specified.
WS_TABSTOP Specifies a control that can receive the keyboard focus when the user presses the TAB key. Pressing the TAB key changes the keyboard focus to the next control with the WS_TABSTOP style.
WS_THICKFRAME Creates a window that has a sizing border. Same as the WS_SIZEBOX style.
WS_TILED Creates an overlapped window. An overlapped window has a title bar and a border. Same as the WS_OVERLAPPED style.
WS_TILEDWINDOW Creates an overlapped window with the WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, and WS_MAXIMIZEBOX styles. Same as the WS_OVERLAPPEDWINDOW style.
WS_VISIBLE Creates a window that is initially visible.
WS_VSCROLL Creates a window that has a vertical scroll bar.
Manche lassen auch mit Gadgets kombinieren...

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Mok
BotHunter
Beiträge: 1484
Registriert: 26.12.2005 14:14
Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit
Wohnort:   

Re: neues fenster durch buttongadget

Beitrag von Mok »

mk-soft hat geschrieben:Manche lassen auch mit Gadgets kombinieren...
Eigentlich alle, weil in der WinAPI wird ein Gadget genauso handgehabt wie ein Fenster *klugscheiß* :mrgreen:
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Antworten