Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Color für Buttons



  • Please log in to reply
10 replies to this topic
julius
  • Members
  • 100 posts
  • Last active: Oct 30 2015 05:39 PM
  • Joined: 27 Dec 2012

ich will den Buttons in einer GUI eine Hintergrundfarbe geben bzw. bei bestimmten Events die Hintergrundfarbe ändern.

 

Gui, color, fenster, control

gui, add, button,, bla

Die Fensterfarbe funktioniert, aber die Buttons tun nix.

In der Hilfe steht zwar, dass der Befehl nicht für alle Controls geht, abe ich habe nicht gefunden, für welche.

Geht das mit Buttons - und wenn ja, wie?

(Wenn nicht, nehme ich Bilder, kein Problem. Aber ich möchte es einfach wissen.)

 

Grüße und Danke!

 

Julius



garry
  • Spam Officer
  • 3219 posts
  • Last active: Sep 20 2018 02:47 PM
  • Joined: 19 Apr 2005

Beispiel mit 5 Color-Buttons :

Modified=20130110
filename1=Test
setworkingdir,%a_scriptdir%
Gui,2: Color, 000000
aa=AAA,BBB,CCC,DDD,EEE
stringsplit,g,aa,`,
           total1:=g0
gui,2:add,text,section x1   y3 w0 h0,
loop,%total1%
      {
      c:=g%a_index%
      if a_index=3
          Gui,2:Add,Progress,            xp    y+7    w130   h23  Disabled BackgroundBlack
      else
          Gui,2:Add,Progress,            xp    y+7    w130   h23  Disabled BackgroundRed
      Gui,2:Add,Text,                xp    yp     wp    hp   cYellow  BackgroundTrans Center 0x200 vrb%a_index% gStartRec,%c%
      }
loop,%total1%
   rb%a_index%:=a_index
Gui,2: Show, x10 y1  w400 ,%filename1%
return
2guiclose:
exitapp

startrec:
gui,2:submit,nohide
r:=%a_GuiControl%
t:=g%r%
msgbox, 262208,BUTTON_TEST ,You selected Button-%r% = %t%,3
return




Beispiel mit 2 kleinen Farbbilder

;------- COLOR BUTTONS -------------------------------------
f1=http://i.imgur.com/PRodizN.png   ;- red
f2=http://i.imgur.com/Ms1JljY.png   ;- green
t1=%a_scriptdir%\red.png
t2=%a_scriptdir%\green.png
ifnotexist,%t1%
  urldownloadtofile,%f1%,%t1%
ifnotexist,%t2%
  urldownloadtofile,%f2%,%t2%

Gui,1: +AlwaysOnTop
Gui,1:Font,S12,FixedSys
;-----------------------------------------------------------
Gui,1:Add,Picture,x0 y1  h20 w100 gCALC,%t1%
Gui,1:Add,text,cWhite BackgroundTrans x25 y3 h20 gCALC,CALC1

Gui,1:Add,Picture,x120 y1  h20 w100 gSNDVOL,%t2%
Gui,1:Add,Text,cWhite BackgroundTrans x145 y3 w100 h20,VOLUME
;-----------------------------------------------------------
Gui,1:Show,x1 y0 h30 w230 ,COLOR BUTTONS
return

CALC:
run,calc.exe
return

SNDVOL:
run,sndvol32
return

GuiClose:
ExitApp



julius
  • Members
  • 100 posts
  • Last active: Oct 30 2015 05:39 PM
  • Joined: 27 Dec 2012

Ja, Danke, das ist ein workaround. Mich interessiert aber die Frage prinzipiell ;)



garry
  • Spam Officer
  • 3219 posts
  • Last active: Sep 20 2018 02:47 PM
  • Joined: 19 Apr 2005

hello Julius, habe keine Antwort

habe noch ein zweites Beispiel oben hinzugefügt



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Im Prinzip erhalten Windows Controls von Windows einen Zeichenbereich (hdc), ein bisschen Raum im speicher, und sie erhalten jede Menge Windows Nachrichten .

Je nachdem welche Windows Nachrichten sie erhalten wird Code ausgeführt der auf die Zeichenfläche des Controls zeichnet.

Du kannst nun entweder ein altes Control verwenden und ein paar Zeichen Befehle ändern (seperat ausführen), oder aber dein eigenes schreiben.

Zudem gibt es auch noch die Möglichkeit (z.b. mit ActiveX und IE) HTML oder andere Sachen darstellen zu lassen.


Visit the new forum ahkscript.org.

http://ahkscript.org


julius
  • Members
  • 100 posts
  • Last active: Oct 30 2015 05:39 PM
  • Joined: 27 Dec 2012

hello Julius, habe keine Antwort

habe noch ein zweites Beispiel oben hinzugefügt

Danke, vielleicht kann ich's ja mal brauchen ..



julius
  • Members
  • 100 posts
  • Last active: Oct 30 2015 05:39 PM
  • Joined: 27 Dec 2012

hello Julius, habe keine Antwort

habe noch ein zweites Beispiel oben hinzugefügt

Danke, vielleicht kann ich's ja mal brauchen ..

 

Im Prinzip erhalten Windows Controls von Windows einen Zeichenbereich (hdc), ein bisschen Raum im speicher, und sie erhalten jede Menge Windows Nachrichten .

Je nachdem welche Windows Nachrichten sie erhalten wird Code ausgeführt der auf die Zeichenfläche des Controls zeichnet.

Du kannst nun entweder ein altes Control verwenden und ein paar Zeichen Befehle ändern (seperat ausführen), oder aber dein eigenes schreiben.

Zudem gibt es auch noch die Möglichkeit (z.b. mit ActiveX und IE) HTML oder andere Sachen darstellen zu lassen.

Danke, aber das übersteigt meine Fähigkeiten. Ich lerne: 1. es ist nicht so einfach, wie ich dachte. 2. wenn ich einen bunten Button will, nehme ich ein buntes Bild.

 

Auf jeden Fall: vielen Dank!

 

Julius

 

P.S: meine nächste dumme Frage steht auch schon im Forum :(



garry
  • Spam Officer
  • 3219 posts
  • Last active: Sep 20 2018 02:47 PM
  • Joined: 19 Apr 2005

GUI / Button  verändern mit msstyles , in script mit ***** gekennzeichnet

habe lediglich Problem beim Beenden von Youtube und Vimeo  ( ActiveX )

 

GUI Skinning from user = 'Soft' :
http://ahkscript.org...71ec1dffe602959

/*
GUI Skinning from user = 'Soft' :
http://ahkscript.org/boards/viewtopic.php?f=6&t=5841&sid=e8c2b77a8eb41724571ec1dffe602959
Versuch mit XP netbook 32-bit AHK_L 1.1.19.02 videolan

Dies ist ein ActiveX Beispiel mit msstyle und Youtube/Vimeo
Fehler Meldung mit msstyle und nur wenn Youtube/Vimeo beendet wird :
-Autohotkey Unicode 32-bit hat ein Problem festgestellt und muss beendet werden
*/


modified=20150129

#NoEnv
SendMode Input
SetWorkingDir,%A_ScriptDir%
SetTitleMatchMode 2
SetBatchLines, -1
Sendmode,input

filename1=TV-SRF %a_scriptname%  %modified%


;------ needs USkin.dll ------------------------
uskinx=%a_scriptdir%\USkin.dll
ifnotexist,%uskinx%
  {
  msgbox, 262208, ,USkin.dll not exist`nThis downloads it
  urldownloadtofile,http://knowledgeisfree.tistory.com/attachment/[email protected],%uskinx%
  }

ifnotexist,%uskinx%
  {
  run,http://knowledgeisfree.tistory.com/attachment/[email protected]
  exitapp
  }

Loop, %a_scriptdir%\*.msstyles    ;- here are the *.msstyles files
  e .= A_LoopFileFullPath . "`r`n"

if e=
  {
  msgbox, 262208, ,*.msstyles files are missing`n Add these to a_scriptdir`nNow starts URL to download these *.msstyles-files`nhttp://knowledgeisfree.tistory.com/attachment/[email protected]
  run,http://knowledgeisfree.tistory.com/attachment/[email protected]
  exitapp
  }
;------------------------------

Gui,2: +AlwaysOnTop
Gui,2: Color, 000000
Gui,2:Font,  S10 CDefault , FixedSys

;********************************************
;-http://www.codejock.com/downloads/samples/visualstyles.asp
;- problem , send problem to microsoft when youtube finished
pr1:= a_scriptdir . "\USkin.dll"
aa1:= a_scriptdir . "\ccx.msstyles"
;aa1:= a_scriptdir . "\MacLion3.msstyles"        ;- select here your GUI_Style

SkinForm(Apply,pr1,aa1)
OnExit, GetOut
;********************************************



;Gui,2:Add,ActiveX, x10 y10 w1460 h900 vWB1 ,Shell.Explorer              ;- Internet Explorer Windows Microsoft
Gui,2:Add,ActiveX, x10 y10 w1460 h900 vWB1 ,Mozilla.Browser              ;- Mozilla Firefox
Gui,2:Add, Slider  , x1500  y100 w40  h190     altsubmit    vVOL11a gVOL11 Range0-100  Vertical invert thick30 cWhite left line10,%sm4%

WB1.Silent := True
ComObjError(false)

Gui,2:add,button,x10   y930  h25 w90  gYT1       ,Youtube
Gui,2:add,button,x110  y930  h25 w90  gVimeo1    ,Vimeo
Gui,2:add,button,x210  y930  h25 w90  gSFinfo    ,SFinfo
Gui,2:add,button,x310  y930  h25 w90  gNederland ,Nederland


Gui,2: Show,x0 y0 w1550 h970,%filename1%
sleep,1000
;gosub,yt1
return
;-------------------------

;----- volumex ----------
VOL11:
GuiControlGet, VOL11a
SoundSet,%vol11a%,WAVE
return
;------------------------

yt1:
;- loop or repeat/replay not works
   ;id=iCKMzrPy4t4    ;- aquela janela
   id=ciP5SZnbEO8    ;- verre land
   start:=101
   endtm:=132
   F1=https://youtube.googleapis.com/v/%id%&start=%start%&end=%endtm%&autoplay=1  ; for Test play for 30 seconds
   ;F1=https://www.youtube.com/v/%id%&autoplay=1
   WB1.Navigate(F1)
return
;----------

vimeo1:
;- north korea
f1=https://player.vimeo.com/video/102051605#at=1
WB1.Navigate(F1)
return

SFinfo:
f1:="http://www.srf.ch/livestream/player/srf-info"
WB1.Navigate(F1)
return

nederland:
gosub,nederland1
WB1.Navigate(LAST)
return
;-----


;------------------------
Getout:        ;**********
2Guiclose:
exitapp

;******************************************************************
SkinForm(Param1 = "Apply", DLL = "", SkinName = ""){
    if(Param1 = Apply){
        DllCall("LoadLibrary", str, DLL)
        DllCall(DLL . "\USkinInit", Int,0, Int,0, AStr, SkinName)
    }else if(Param1 = 0){
        DllCall(DLL . "\USkinExit")
        }
}
;******************************************************************

;-----------------------------------------
nederland1:
f1=http://nos.nl/uitzending/nos-journaal
httpQuery(aaa,f1)
Extensions1 := "mp3,m4a,wav,wma,flv,vob,mp4,mpg,wmv,avi"
loop,parse,aaa,`n,`r
  {
  x=%A_loopfield%
  if x contains <source src
    {
    y=%x%
    break
    }
 }
A:="http"
T=
Loop,parse,y,`n,`r
   {
   stringlen,L1,A
   T=%A_LoopField%
   StringReplace t,T,.%A_Space%,`,,All
   StringRight r,t,1
   IfEqual r,., StringTrimRight t,t,1
   Loop Parse,t,`,` `"`>`=`;?`!`<
     {
     StringLeft r,A_LoopField,L1
     If (r=A)
        {
        SplitPath,A_LoopField, name, dir, ext, name_no_ext, drive
        if ext in %Extensions1%
           {
           k .= A_LoopField "`n"
           Last=%A_LoopField%
           }
        }
     }
   }
return
;--------------------------

;---------------------------------------------------------------

httpQuery(byref Result, lpszUrl, POSTDATA="", HEADERS="")
{
   WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
   WebRequest.Open("GET", lpszUrl)
   WebRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
   WebRequest.Send(POSTDATA)
   Result := WebRequest.ResponseText
   WebRequest := ""
}
return
;============ END SCRIPT ==========================================



jNizM
  • Members
  • 928 posts
  • Last active: Jan 12 2018 09:23 AM
  • Joined: 01 Aug 2012
Ich würde dir das hier vorschlagen:
(Class) ImageButton von just me

Beispiele sind in dem Thread vorhanden
[AHK] 1.1.27.04 x64 Unicode | [WIN] 10 Pro (Version 1709)
My GitHub Profile | Donations are appreciated if I could help you

garry
  • Spam Officer
  • 3219 posts
  • Last active: Sep 20 2018 02:47 PM
  • Joined: 19 Apr 2005

danke jNizM  , msstyles verändert das ganze GUI



julius
  • Members
  • 100 posts
  • Last active: Oct 30 2015 05:39 PM
  • Joined: 27 Dec 2012
✓  Best Answer

Ich würde dir das hier vorschlagen:
(Class) ImageButton von just me

Beispiele sind in dem Thread vorhanden

Super - das habe ich jetzt erst gesehen:
Mille grazie!!!