  | 
					
						Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!   
						
						
					 | 
				 
			 
			 
	
		| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen   | 
	 
	
	
		| Autor | 
		Nachricht | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 10.05.2019, 20:34    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				okay hab den fehler gefunden ich habe nun alle 
 
imagecreate's in 
 
 	  | Code: | 	 		  
 
imagecreate(gad->GadWidth,Gad->GadHeight,0,32)
 
oder
 
imagecreate(gad->GadWidth,Gad->GadHeight,"variable",32)
 
 | 	  
 
geaendert damit die "texturen" auch wirklich 32bit farbtiefe haben.
 
 
ausserdem musste ich noch in der sGui_MCP.bas folgendes aendern.
 
 	  | Code: | 	 		  
 
sub GUIBuild_Crawler(win as sGUIWindow ptr)
 
...
 
  childgad=win->GadgetList->GetFirst
 
  if childgad then
 
    do
 
      childgad->DoDraw(childgad)    
 
      if childgad->GadgetWindow then GUIBuild_Crawler(childgad->GadgetWindow)      
 
      put win->DrawBuffer->img,(win->ContentOffsetX + childgad->PosX, win->ContentOffsetY + childgad->PosY),childgad->DrawBuffer->img,alpha <------ das hier
 
      childgad=cast(Gadget ptr,childgad->next_node)
 
    loop until childgad=0
 
  end if
 
...
 
 | 	  
 
 
soweit ist das jetzt FB und OpenB3D mit 2d.bi kompatibel  
 
 
gruesse
 
 
PS: ich koennte dir ja die umgebaute version mal bei nem uploader hochladen das du nich alles selber umschreiben musst.
 
 
Edit: hier die ueberarbeitet version  
 
http://users.freebasic-portal.de/haubitze/sGUI-alpha-fix.zip
 
und ein bild mit einem AlphaValue von 224  
 
 
  | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 11.05.2019, 10:14    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Vielen Dank fürs Arc, macht es einfacher  
 
Sichte grad mal so durch...
 
folgendes:
 
 	  | Code: | 	 		  
 
property ColorStorage.GadFrame (RGBValue as ulong)
 
  'Storage(15) = (RGBValue and &HFFFFFF) or Storage(0)
 
  Storage(15) = RGBValue or Storage(0)
 
End property
 
 | 	  
 
 
Überbleibsel von nem Test? Ansonsten würden sich die gesetzten Bits des AlphaAnteils bei Änderung nur auflaufend sammeln.
 
Ich meine man kann ja jetzt sowohl über den RGBValue des GadFrame Property einen Alphawert mitgeben als auch über Colors.AlphaValue separat.
 
Aber ich kann mich irren.
 
 
Ps: sieht schonmal cool aus da oben
 
 
pps:
 
 
 
First Release! Wow, lang ists her:
 
https://1drv.ms/u/s!AsTPhVzcfzRrh_RAu0-HBNd3I6OeAw
 
Iwie find ich die Vista Optik garnicht sooo schlecht
 
 
 
 
 
Mutton   | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 11.05.2019, 15:36    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | Muttonhead hat Folgendes geschrieben: | 	 		  
 
folgendes:
 
 	  | Code: | 	 		  
 
property ColorStorage.GadFrame (RGBValue as ulong)
 
  'Storage(15) = (RGBValue and &HFFFFFF) or Storage(0)
 
  Storage(15) = RGBValue or Storage(0)
 
End property
 
 | 	  
 
 
 | 	  
 
ja das war ein test hab dann aber festgestellt das das so nicht geht, habe es daher wieder in den orginal zustand versetzt.
 
 
PS: is das richtig mit dem link? sind nur 3 datein drin in dem zip.
 
der ordner heist (sGUI)SimpleGUI.000. und ist von 2009.
 
haste da evtl was altes verpackt? ;D | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 11.05.2019, 17:40    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | Zitat: | 	 		  is das richtig mit dem link? sind nur 3 datein drin in dem zip. 
 
der ordner heist (sGUI)SimpleGUI.000. und ist von 2009. 
 
haste da evtl was altes verpackt? ;D | 	  
 
 
Richtig   !  Die erste "Veröffentlichung"... 2009!!
 
(Hab da so einen Ordner mit diversen Versuchen)
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 11.05.2019, 19:30    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				@Haubitze:
 
Teste grad mal UserGFX mit den Anpassungen.
 
 
Das  BMP-Font-Problem schiebe ich jetzt mal ganz weit nach hinten. Es funzt zwar irgendwie, nur halt nicht richtig.
 
 
Allerdings ist jetzt der User bei sämtlichen FBGFX Befehlen bei der Farbgebung immer an das Farbformat &HAARRGGBB gebunden. genauer "&HFFrrggbb"
 
 
Meister Yoda würde sagen: glücklich, nicht so ganz, ich bin.
 
Eigentlich wollte ich irgendwelches Umwickeln der FBGFX Befehle vermeiden... nicht das ich es in sGUI schon getan hätte  
 
Wenn ich weiß, ich bekomme ein Image Pointer, dann sollte halt klar sein, welche Möglichkeiten damit gegeben sind.
 
 
Hmm...
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 11.05.2019, 19:56    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				naja verstehn tuh ich dich schon aber macht das so einen grossen untershied
 
ob ich pset(10,46),rgb(255,0,0) schreibe oder pset(10,46),rgba(255,0,0,255)?  
 
 
gut letzters ist 5 zeichen laenger :/ | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 12.05.2019, 14:52    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				hm so ein mist.... wie ich gerade sehe hatt angros47 einen patch rausgebracht
 
der es ermoeglicht FBGFX im OpenGL window zu zeichnen ohne diese hackige
 
2d.bi.
 
 
von daher werde ich mal deine alte version benutzen um zu sehen ob das flutscht, wenn ja dann brauchst du dich mit diesem alpha gedoehns nicht mehr
 
auseinander zu setzen :/
 
 
salute
 
 
Edit: leider bekomm ich das mit dem internen OGL renderer nicht hin, hab 
 
entweder nur die 3d scene oder nur die sGUI auf dem bildschirm :/ | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 25.05.2019, 11:04    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				hallo Mutton,
 
 
hab im englischen forum mal angros nach dem internen 2d render fuer opengl
 
gefrag, ob und wenn ja was ich falsch mache.
 
ausserdem moechte ich dich bitten mich mal auf den neuesten stand zu bringen  
 
ich braeuchte jetzt naehmlich scrollbars und diese TO_ text gadgeds im fenster.
 
 
ich hoffe ich nerv dich nicht mit meinen wuenschen :/
 
 
gruesse
 
 
PS: konnte mich leider erst jetzt wieder melden. | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 04.06.2019, 22:31    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Hey Mutton,
 
angros47 aus dem englischen forum hatt mir eben eine demo fuer den internen
 
opengl renderer gepostet. mit ein paar kleinen aenderungen seh ich nun die
 
auf alpha getrimmte sGUI. netter nebeneffekt fast doppelt soviele fps (~70-80 / ~30-40)   werde die alte mit trans arbeitende sGUI, die tage, auch mal  testen und dir rueckmeldung geben ob das auch flutscht. | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 05.06.2019, 18:32    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Hallo Haubitze...
 
 
Derzeit hakt es ein wenig bei der Umsetzung der Listbox, aber das werd ich schon hinbekommen. Also die ist noch nicht fertig.
 
Für die Listbox, ComboBox(noch nicht umbesetzt) und das Menüsystem(auch noch nicht da) soll jetzt eine einheitliche
 
sogenannte "EntryList" als "Datengrundlage" herhalten. Diese Liste ist aber ein externes Objekt.
 
 
Dadurch durchlaufen nun alle Controls eine Art Update-Routine, welche dann auf entsprechende veränderte Umstände das Control neu
 
konfiguriert. Bei den meisten Controls ist diese Routine jedoch einfach nur leer.
 
 
Das Einbinden des User-Images ist jetzt in die DrawWindow/DrawRootWindow Routinen gewandert.
 
 
derzeit entferne ich diverse "DrawGadget()" bzw "->DoDraw()" Aufrufe aus etlichen Subs. Diese machen das System nur langsam und werden
 
nun nicht mehr benötigt, da ja das Zeichnen nun zentral im GUIBuild_Crawler abläuft.
 
Gut möglich dass das Zeichnen in ein Image, wenn es garnicht notwendig ist, auch Auswirkung auf die Transparenzgeschichte hat.
 
 
Hier nochmal die Stellen zum Herumschrauben (hoffentlich sinds auch alle):
 
 
sGUI_WindowGadgetType.bas
 
  function EnableUserGFX
 
  
 
sGUI_MCP.bas
 
  sub MasterControlProgram
 
  sub GUIBuild_Crawler
 
 
Window.bas
 
  function AddWindow
 
  function AddRootWindow
 
  sub DrawWin
 
  sub DrawRootWin
 
 
in folgenden Dateien alle Add...Routinen, die ein Image per IMAGECREATE erzeugen:
 
Arrows.bas
 
ListBox.bas 
 
ListBox_Selector.bas
 
RadioCheck.bas
 
ScrollBar.bas
 
ScrollBar_Container.bas
 
SimpleToggle.bas
 
Window_CloseButton.bas
 
Window_DragBar.bas
 
 
Die Fenstercontrols, also DragBar und CloseButton, sind umgeschrieben worden. Der eigentliche Grund waren merkwürdige Transparenzeffekte
 
Ein Fenster mit Kopfzeile hat nun immer ein Dragbar, das klingt erstmal doof, ist aber so  
 
Das Dragbar zeigt nun den Fenstertitel an, und, wenn das entsprechende Flag gesetzt ist, funktioniert es und verschiebt auch das Fenster.
 
Anderenfalls ist das Dragbar im SLEEP-Modus, schon bleibt das Fenster wo es ist.
 
 
Die Referenz hinkt natürlich nach...  
 
 
https://1drv.ms/u/s!AsTPhVzcfzRrh_UcvZlBv2fHtYDexA
 
 
Mutton
 
 
ps:
 
ich stelle grad fest das die Signalweitergabe bei mehrfach zusammengesetzten Controls nicht richtig funktioniert. Die Listbox ist nun ein solcher Fall. | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 07.06.2019, 13:42    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				hey Mutton,
 
 
danke fuers update, laeuft auf anhieb (listbox,scrollbar usw eingeschlossen)  
 
nun hast du aber die dragbar irgendwie putt gemacht  
 
 
wenn ich mir in einem fenster eine dragbar erstelle und das fenster ist nicht
 
verschiebbar, dann kann ich es trozdem mit der eigenen dragbar verschieben.
 
ka ob das so gewollt ist. ich brauche die dragbar als picker (fuer coordinaten
 
oder farben) oder giebet da eine bessere methode.
 
(position der dragbar innerhalb des fensters wird gelesen)
 
 
gruesse | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 07.06.2019, 14:42    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				ich hab dir mal per PrivateMessage nen Link geschickt. ist grad mein aktuelles "Arbeitsverzeichnis". diesesmal über GoogleDrive. Ich komme nach ner PW-Änderung grad nicht an mein OneDrive ran  
 
Tausche mal das Verzeichnis und berichte mal was passiert.
 
Hatte hier auch ein paar Probleme mit der Dragbar.
 
 
Allerdings macht ein Dragbar genau das: seine eigenes Parentfenster verschieben....   .
 
Wenn ich das zum Fenster gehörige per FLAG in den SleepModus setze und du fügst danach ein anderes hinzu, dies könnte etwas kollidieren  
 
 
Vielleicht ist ein "SpecialGad" dann die Lösung
 
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 07.06.2019, 19:29    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				hm ja klar ne dragar is halt zum draggen da, evtl waere ein dragable button
 
oder sowas ne loesung oder man versieht das dragbar mit nem extra flag.
 
 
hab auch schon simple gadged versucht das klappt aber auch nich.
 
naja zumindesthab ich schon mal scrollbars und listboxen.
 
 
  | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 07.06.2019, 19:44    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				machen wir es kurz: erstell doch mal nen Lastenheft:
 
1.Aussehen.. Fadenkreuz, Pipette oder sowas...
 
2.Beweglichkeit.. es soll ja wohl mit der Maus über ein nicht weiter definiertes Areal bewegt werden
 
usw und sofort.
 
3. Fenster oder Gadget? ein paar Sachen lassen sich auch gut nur mit der Position eines Fensters regeln, also auch gänzlich ohne Gad
 
Davon mal abgesehen, generell ist jedes Element (egal ob Win oder Gad) über ->PosX/->PosY während der Laufzeit verschiebbar!
 
4. was soll es an Informationen liefern?
 
ich werde dann mal sehen,  ob ich da was zusammenschrauben kann
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 07.06.2019, 20:02    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				also gut ...
 
1. ein fadenkreuz waere super
 
2. es soll nur innerhalb eines zuvor definierten fensters bewegbar sein (mit der maus)
 
3. ein gadget waere fuer mich wohl die loesung der wahl.
 
4. es soll mir die position innerhalb eines fensters geben (diese kann ich ja per posX,posY ermitteln)
 
 
 
zu 3. ich habe probleme mir meine eigenes ding zu basteln da ich die fenster
 
im fenster spaeter mit der scrollbar auch noch verschiebe, also die fenster dann nicht mehr in ihrer orginal position stehen bzw auch nur halb zu sehen
 
sind. da wird dann wohl zuviel rumgerechnet, daher denke ich ein gadget
 
das seine position relativ zum fenster zurueckgiebt waere super. | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 08.06.2019, 08:57    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				CrossHair.bas:
 
 	  | Code: | 	 		  namespace sGUI
 
 
declare function AddCrossHair(win as sGUIWindow ptr,PosX as integer,PosY as integer) as Gadget ptr 
 
declare function CrossHairActions(gad as Gadget ptr,action as integer) as integer
 
declare sub DrawCrossHair (gad as Gadget ptr)
 
 
'ctrl(13) mouse-over-control-flag
 
function AddCrossHair(win as sGUIWindow ptr,PosX as integer,PosY as integer) as Gadget ptr
 
  function=0  
 
  dim as Gadget ptr gad
 
  if win=0 then win=RootWindow
 
  gad=win->GadgetList->AppendNew (GadgetType)
 
  if gad then
 
    gad->parent=win
 
    gad->Selection=0
 
    gad->Activation=0
 
    gad->PosX=PosX
 
    gad->PosY=PosY
 
    gad->GadWidth=15
 
    gad->GadHeight=15
 
    
 
    'gad->DrawBuffer->img=imagecreate(gad->GadWidth,Gad->GadHeight)
 
    gad->DrawBuffer->img=imagecreate(gad->GadWidth,Gad->GadHeight,0,32)'by Haubitze
 
    'Da man das Fadenkreuz nicht ständig neuzeichnen muß, erledigen
 
    'wir die Grafik gleich hier und in der DrawCrossHair-Routine machen wir dafür nüscht
 
    if gad->DrawBuffer->img then
 
      ClearBox gad->DrawBuffer->img,0,0,gad->GadWidth,gad->GadHeight
 
      FillA gad->DrawBuffer->img,0,6,5,3,Colors.Black,Colors.White,0'l
 
      FillA gad->DrawBuffer->img,10,6,5,3,Colors.Black,Colors.White,0'r
 
      FillA gad->DrawBuffer->img,6,0,3,5,Colors.Black,Colors.White,0'o
 
      FillA gad->DrawBuffer->img,6,10,3,5,Colors.Black,Colors.White,0'u
 
    end if
 
    
 
    gad->DoDraw     =@DrawCrossHair
 
    gad->DoAction   =@CrossHairActions
 
    'gad->DoUpdate=@FakeUpdate' zu finden im Constructor des Gadgettypes in sGUI_WindowGadgetType.bas
 
    function=gad
 
  end if
 
end function
 
 
 
function CrossHairActions(gad as Gadget ptr,action as integer) as integer
 
  function=0
 
  dim as sGUIWindow ptr win
 
  win=cast(sGUIWindow ptr, gad->parent)
 
  select case action     
 
    case GADGET_LMBHIT
 
      gad->Ctrl(0)=MOUSEX - gad->PosX
 
      gad->Ctrl(1)=MOUSEY - gad->PosY   
 
    case GADGET_LMBHOLD,GADGET_LMBHOLDOFF
 
      gad->PosX =MOUSEX - gad->Ctrl(0)
 
      gad->PosY =MOUSEY - gad->Ctrl(1)
 
      'Limiter
 
      if gad->PosX<-7 then gad->PosX=-7
 
         if gad->PosY<-7 then gad->PosY=-7
 
      if gad->PosX>win->ContentWidth-8 then gad->PosX=win->ContentWidth-8
 
      if gad->PosY>win->ContentHeight-8 then gad->PosY=win->ContentHeight-8      
 
  end select  
 
end function
 
 
 
sub DrawCrossHair (gad as Gadget ptr)
 
end sub
 
 
end namespace | 	  
 
 
Gadget_CrossHair.bas:
 
 	  | Code: | 	 		  #include "sGUI\sGUI.bas"
 
#include once "sGUI\CrossHair.bas"
 
using sGUI
 
 
screen 19,32
 
InitGUI
 
 
LoadProportionalFont("Ubuntu\Ubuntu-R\Ubuntu-R.bmp")
 
LoadFixedFont("Ubuntu\UbuntuMono-R\UbuntuMono-R.bmp")
 
 
dim as sGUIWindow ptr win
 
dim as Gadget ptr cross
 
 
win=AddWindow(0,350,150,120,100,"win",WFLAG_WINDOWTYPE2 or WFLAG_DRAGABLE)
 
cross=AddCrossHair(win,0,0)
 
 
ShowWindow(win)
 
GadgetOn(cross)
 
 
dim as integer ff=freefile
 
open cons for output as ff
 
do
 
  sleep 1
 
  MasterControlProgram
 
  if GADGETMESSAGE then
 
    select case GADGETMESSAGE
 
      case 0      
 
    end select
 
  end if
 
loop until SCREENCLOSEBUTTON
 
close ff | 	  
 
 
musste allerdings jetzt wieder im GUIBuild_Crawler an der Transparenz
 
herumfummeln:
 
Zeile 246:
 
 	  | Code: | 	 		  |         put win->DrawBuffer->img,(win->ContentOffsetX + childgad->PosX, win->ContentOffsetY + childgad->PosY),childgad->DrawBuffer->img,trans'pset | 	  
 
 
ps: der "Hotspot" ist dann auf gad->PosX+7  gad->PosY+7
 
 
Es ist ja nur ein Beispiel wie es funktionieren könnte. 
 
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 08.06.2019, 11:00    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				wow das war schnell.
 
 
ja warum das gerade beim dem crosshair nicht mit der transparenz funtzt, ka.
 
aber das funtzt schon super, nur das das crosshair nicht in den rahmen des
 
fensters verschiebbar sein sollte. 
 
 
ich schau mal woran das mit der transparenz liegen koennte.
 
 
edit: okay die zeile 246 auf ,ALPHA aendern sollte klappen. zumindest machts das bei mir. hoffe das hilft.
 
 
edit2: auf jeden fall istdas genau das was ich brauche danke Mutton  
 
 
edit3:sauber Mutton alles laeuft wie es soll nun muss ich das ganze nur noch
 
huebsch verpacken  
 
   | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 08.06.2019, 20:51    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				... jetzt muss ich nochmal nachfragen, aufgrund des Screenshots: du nimmst nen "normales" Fenster, packst nen Scrollbar rechts hin und ein "überhohes" ChildWindow und baust darin die gesamte GUI auf? Und mit dem Scrollbar verschiebst du das ChildWindow in der Höhe um den Rest des überhöhten Fensters sichtbar zu machen?
 
   
 
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Haubitze
 
 
  Anmeldungsdatum: 14.10.2009 Beiträge: 132
 
  | 
		
			
				 Verfasst am: 08.06.2019, 21:43    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				| jepp genau so, warte naturlich noch auf den minimize button ;D | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		Muttonhead
 
  
  Anmeldungsdatum: 26.08.2008 Beiträge: 571 Wohnort: Jüterbog
  | 
		
			
				 Verfasst am: 08.06.2019, 22:02    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				.. da hat jemand die WINFLAGS genau inspiziert... steht aber erstmal hinten an.
 
interessant ist allerdings dein Workaround für ein Windowfeature, also grösserer  Fensterbereich scrollen, korrektes Erkennen der Controls usw.
 
Funzt das denn? ich hab sowas noch nicht probiert. Du machst das "nur" in der Y Achse, dadurch wird das Scrollbar immer sichtbar sein.... ist aber interessant zu wissen, das die Berechnung von Maus- zu Win/Gadget- Koordinaten korrekt funktioniert, auch wenn das childwin verschoben wird.!
 
 
Mutton | 
			 
		  | 
	 
	
		| Nach oben | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
	 
	    
	   | 
	
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
  | 
   
 
     |