meta data for this page
  •  

FF_SetControlImage

Mit FF_SetControlImage kann ein Button mit einem Bild versehen werden, welches anstatt des Textes angezeigt wird. Es werden die Grafikformate *.jpg, *.jp2, *.png, *.tif und *.bmp unterstützt. Soweit das Grafikformat es zulässt, sind auch transparente Bilder möglich.

Grundsätzlich kann bei aktivem Dialog das Bild eines Buttons nicht mehr verändert werden. Um verschiedene Zustände eines Buttons (z.B. an / aus) grafisch darzustellen, kann es aber sinnvoll sein, dies durch unterschiedliche Bilder darzustellen. Dies kann wie folgt erreicht werden:

  1. Dialog schließen
  2. Dialog mit geänderten Grafiken auf den Button neu definieren
  3. Dialog erneut aufrufen

Bsp. in VBScript

  1. ' FFSubmenu=Test
  2. ' FFName=DemoButtonPicture
  3. ' KGsoft (praetor), Version 1.0 vom 06.05.2011
  4.  
  5. Option Explicit
  6. const on_picture = "an3.png"
  7. const off_picture = "aus3.png"
  8. Dim Taste, aktini
  9.  
  10. aktini = 1 ' Variable steuert, mit welchen Grafiken die Button versehen werden
  11. Call Dialogaufbau
  12. Call Buttonicons
  13. Call Main
  14.  
  15. Sub Main
  16. Do ' erneute Anzeige des Dialogs, solange Buttonbilder geändert werden
  17. Do ' Dialoganzeige und Tastenabfrage
  18. Taste = FF_ShowDialog("Demo Button-Picture")
  19. Select Case Taste
  20. Case "1_button"
  21. aktini = 1
  22. FF_CloseDialog "Demo Button-Picture"
  23. Exit Do
  24. Case "2_button"
  25. aktini = 2
  26. FF_CloseDialog "Demo Button-Picture"
  27. Exit Do
  28. Case "OK"
  29. Exit Sub
  30. Case "CANCEL"
  31. Exit Sub
  32. End Select
  33. loop
  34. Call Dialogaufbau
  35. Call Buttonicons
  36. Loop
  37. End Sub
  38.  
  39. Sub Dialogaufbau
  40. '** Start Dialog Demo Button-Picture **
  41. FF_AddDialog "Demo Button-Picture",93,47
  42. FF_AddControl "Demo Button-Picture","1_button","BUTTON",5,22,17,17
  43. FF_AddControl "Demo Button-Picture","2_button","BUTTON",26,21,18,18
  44. FF_AddControl "Demo Button-Picture","OK","BUTTON",53,28,33,11
  45. FF_AddControl "Demo Button-Picture","I","STATIC",14,10,7,11
  46. FF_AddControl "Demo Button-Picture","II","STATIC",34,10,7,11
  47. '** End Dialog Demo Button-Picture **
  48. End Sub
  49.  
  50. Sub Buttonicons '
  51. Select Case aktini
  52. Case 1
  53. FF_SetControlImage "Demo Button-Picture", "1_button", FF_GetFFPathEx(2) & "\DemoButtonPicture\" & on_picture
  54. FF_SetControlImage "Demo Button-Picture", "2_button", FF_GetFFPathEx(2) & "\DemoButtonPicture\" & off_picture
  55. Case 2
  56. FF_SetControlImage "Demo Button-Picture", "2_button", FF_GetFFPathEx(2) & "\DemoButtonPicture\" & on_picture
  57. FF_SetControlImage "Demo Button-Picture", "1_button", FF_GetFFPathEx(2) & "\DemoButtonPicture\" & off_picture
  58. End Select
  59. End Sub

Zum Ausprobieren kann das folgende Scriptarchiv heruntergeladen und in FF installiert werden:

demobuttonpicture.zip