Seite 1 von 1

SkinWin Problem

Verfasst: 27.07.2006 09:49
von Tsuki-Namida
Hallo,
ich brauche schonwieder eure hilfe^^

und zwar verstehe ich nicht das bei diesem Code:

Code: Alles auswählen

Procedure Open_Uhr_Window()
  hWnd    = OpenWindow(#Uhr_Window, 104, 193, 143, 142, #PB_Window_BorderLess ,"")
  hBitmap = LoadImage(0, "Images\Timer\Timer-BG.bmp")
  SkinWin(hWnd, hBitmap)
  CreateGadgetList(WindowID(#Uhr_Window))
notused = OpenWindow(#PB_Any,0,0,0,0,#PB_Window_Invisible,"")
SetWindowLong_(WindowID(#Uhr_Window),#GWL_HWNDPARENT,WindowID(notused))
  EndProcedure
das Imagenicht angezeigt wird...
das Image ist in 8bit gespeichert!
es wird nur angezeigt wenn ich den kompletten Datei pfat andebe und dann auch nur im Test play. in der exe wird es überhaupt nicht angezeigt... woran liegt das? wie kann ich das beheben? oder warum ist das so?

Verfasst: 27.07.2006 10:04
von roherter
Nutze doch IncludeBinary() und CatchImage() dann geht es auf jeden fall. 8)

Verfasst: 27.07.2006 10:45
von Tsuki-Namida
stimm darauf hätte auch ich kommen können *an den Kopf fass*

naja danke jedenfals

Verfasst: 27.07.2006 11:46
von ts-soft
Such mal nach GetExePath. Diese relativen Pfade taugen nur selten was.

Verfasst: 27.07.2006 12:00
von Tsuki-Namida
das habe ich schon versucht^^ (ich weis das dann der ordner des compiler gezeigt wird)

da ging es auch nicht.... ich habe nun roherter's raat befolgt und jetzt geht es wie gewünscht

aber ich habe hier nuch ein problem :((
und zwar bekomme ich bei dieser zeile [SetGadgetState(#Timer_Stunde, Image27)] die meldung:
[Error] #Gadget object not initialized.

Verfasst: 27.07.2006 13:05
von roherter
Um dazu was sagen zu können müsste man deinen kompletten Sourcecode sehen? :freak:

Verfasst: 27.07.2006 13:07
von ts-soft
http://www.purebasic.fr/german/viewtopi ... h&start=10
ganz unten, die Version meine ich. Da wird dann auch der richtige Pfad
zurückgegeben.

Verfasst: 27.07.2006 14:40
von Tsuki-Namida
okay... ich habe gerade die programmzeilen herauskopiert für diesen teil des Programms... und... es gin plötzlich aber nur das herauskopierte...

okay ich habe es im eigentlichen programm noch mal versucht mit der selben fehler meldung...

ich habe jetz einfach mal versucht das bild komplet neu zu setzen anstat zu updaten. damit geht es jetzt...

hier noch mal die programm zeilen die nur diesen teil des programms beinhalten.

Code: Alles auswählen

Enumeration
  #Uhr_Window
EndEnumeration

Enumeration
  #Timer_Stunde
  #Timer_Stunde_
  #Timer_Minute
  #Timer_Minute_
  #Timer_Monat
  #Timer_Monat_
  #Timer_Tag
  #Timer_Tag_
EndEnumeration

Global Image26
Global Image27
Global Image28
Global Image29
Global Image30
Global Image31
Global Image32
Global Image33
Global Image34
Global Image35
Global Image36

Image26 = CatchImage(26, ?Image26)
Image27 = CatchImage(27, ?Image27)
Image28 = CatchImage(28, ?Image28)
Image29 = CatchImage(29, ?Image29)
Image30 = CatchImage(30, ?Image30)
Image31 = CatchImage(31, ?Image31)
Image32 = CatchImage(32, ?Image32)
Image33 = CatchImage(33, ?Image33)
Image34 = CatchImage(34, ?Image34)
Image35 = CatchImage(35, ?Image35)
Image36 = CatchImage(36, ?Image36)

DataSection
Image26:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\Timer-BG.bmp"
Image27:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\1.ico"
Image28:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\2.ico"
Image29:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\3.ico"
Image30:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\4.ico"
Image31:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\5.ico"
Image32:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\6.ico"
Image33:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\7.ico"
Image34:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\8.ico"
Image35:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\9.ico"
Image36:
  IncludeBinary "G:\Programme\Programmieren\Pure Basic Quelltexte\Ro Theme\Image\Timer\0.ico"
EndDataSection

Procedure Open_Uhr_Window()
hWnd    = OpenWindow(#Uhr_Window, 104, 193, 143, 142, #PB_Window_BorderLess ,"")
hBitmap = Image26
SkinWin(hWnd, hBitmap)
CreateGadgetList(WindowID(#Uhr_Window))
notused = OpenWindow(#PB_Any,0,0,0,0,#PB_Window_Invisible,"")
SetWindowLong_(WindowID(#Uhr_Window),#GWL_HWNDPARENT,WindowID(notused))
ImageGadget(#Timer_Stunde, 47, 40, 8, 13, Image36)
ImageGadget(#Timer_Stunde_, 56, 40, 8, 13, Image36)
ImageGadget(#Timer_Minute, 80, 40, 8, 13, Image36)
ImageGadget(#Timer_Minute_, 89, 40, 8, 13, Image36)
ImageGadget(#Timer_Monat, 51, 80, 8, 13, Image36)
ImageGadget(#Timer_Monat_, 60, 80, 8, 13, Image36)
ImageGadget(#Timer_Tag, 74, 80, 8, 13, Image36)
ImageGadget(#Timer_Tag_, 83, 80, 8, 13, Image36)
  EndProcedure
  
Open_Uhr_Window()
Time.l  = Date()
Stunde$ = FormatDate("%hh", Time)
Minute$ = FormatDate("%ii", Time)
Monat$  = FormatDate("%mm", Time)
Tag$    = FormatDate("%dd", Time)

Debug "Aktuelle Zeit: " + Stunde$ + " : " + Minute$
Debug "Aktuelles Datum: " + Tag$ + "." + Monat$
;Right(Stunde$,1) 
;-Stunde
If Left(Stunde$, 1) = "1"
  ;SetGadgetState(#Timer_Stunde, Image27)
  ImageGadget(#Timer_Stunde, 47, 40, 8, 13, Image27)
ElseIf Left(Stunde$, 1) = "2"
  
ElseIf Left(Stunde$, 1) = "0"
  
EndIf
If Right(Stunde$,1) = "1"
  
ElseIf Right(Stunde$,1) = "2"
  
ElseIf Right(Stunde$,1) = "3"
  
ElseIf Right(Stunde$,1) = "4"
  
ElseIf Right(Stunde$,1) = "5"
  
ElseIf Right(Stunde$,1) = "6"
  
ElseIf Right(Stunde$,1) = "7"
  
ElseIf Right(Stunde$,1) = "8"
  
ElseIf Right(Stunde$,1) = "9"
  
ElseIf Right(Stunde$,1) = "0"
  
EndIf
Repeat
  
Until Event = #PB_Event_CloseWindow