Seite 1 von 1

ImageGadget Problem [GELÖST] Edit: und Problem [GELÖST]

Verfasst: 20.11.2007 19:27
von Tompazi
Edit: Und noch ein Problem:
Ich will überprüfen ob die Mussfelder Ausgefüllt sind mit If Not GetGadgetText(2) = "" gehts nicht wie dann?

Code: Alles auswählen

If OpenWindow(0,100,100,500,700,"Formular")

CreateGadgetList(WindowID(0))
TextGadget(100,10,25,400,20,"Mit * gekennzeichnete Felder sind Mussfelder!")
TextGadget(1,10,60,170,20,"* Vorname:")
StringGadget(2,175,60,300,20,"")
ButtonGadget(101, 205,650,90,25,"Abschicken")

Repeat
Event = WaitWindowEvent()
Select Event
      Case #PB_Event_Gadget
      
       Select EventGadget()
         Case 101
        If Not GetGadgetText(2) = "" ;;;;;;;;;;;;Fehler Hier
         MessageRequester("OK","OK")
        Else 
         MessageRequester("ERROR","Füllen Sie die Mussfelder aus!")
        EndIf
       EndSelect
 EndSelect 
Until Event = #PB_Event_CloseWindow
EndIf


[GELÖST]
Also ich will bei einem Fenster ein Bild als Hintergrund haben aber die anderen Gadgets werden von diesem Bild überdeckt. Die String Gadgets sind zwar Sichtbar aber man kann nicht hinein schreiben. ca. so:

Code: Alles auswählen

If OpenWindow(0,100,100,500,700,"Formular")

CreateGadgetList(WindowID(0))
If LoadImage(0, "pic.bmp")    
ImageGadget(0,0,0,500, 700, ImageID(0))              
EndIf
TextGadget(100,10,25,400,20,"Mit * gekennzeichnete Felder sind Mussfelder!")
TextGadget(1,10,60,170,20,"* Vorname:")
StringGadget(2,175,60,300,20,"")

Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf
Wo liegt das Problem?
[/GELÖST]

Danke Tompazi

Verfasst: 20.11.2007 19:33
von RSBasic

Code: Alles auswählen

If OpenWindow(0,100,100,500,700,"Formular") 

CreateGadgetList(WindowID(0)) 

TextGadget(100,10,25,400,20,"Mit * gekennzeichnete Felder sind Mussfelder!") 
If LoadImage(0, "pic.bmp")    
ImageGadget(0,0,0,500, 700, ImageID(0))              
EndIf 
TextGadget(1,10,60,170,20,"* Vorname:") 
StringGadget(2,175,60,300,20,"") 

Repeat 
Event = WaitWindowEvent() 
Until Event = #PB_Event_CloseWindow 
EndIf
*PS: Sieht aber net gut aus, da der Textgadget nicht durchsichtig ist.

\\Edit:
>*PS: Sieht aber net gut aus, da der Textgadget nicht durchsichtig ist.
Abhilfe:
http://www.purebasic.fr/german/viewtopi ... 642#120642
oder
http://www.purebasic.fr/german/viewtopi ... 702#120702

Verfasst: 20.11.2007 19:50
von Tompazi
transparent brauch die Text gadgets nicht sondern nur weiß da der Großteil meines Hintergrundes Weiß ist. gibt es da eine leichtere möglichkeit das weiß zu Färben? mit Backcolor($FFFFFF) vielleicht?

Verfasst: 20.11.2007 19:52
von RSBasic
@Tompazi

Code: Alles auswählen

SetGadgetColor(#Gadget,#PB_Gadget_BackColor,RGB(255,255,255))

Verfasst: 20.11.2007 20:00
von Tompazi
Super funktioniert! :)
aber muss ich das für jedes TextGadget einzeln machen?

Verfasst: 20.11.2007 20:01
von RSBasic
Tompazi hat geschrieben:Super funktioniert! =)
aber muss ich das für jedes TextGadget einzeln machen?
Ja

Verfasst: 20.11.2007 20:03
von Tompazi
Schade, aber egal Danke :)
Und ähh... wenn ich das Fenster über den bildschirm Rand Ziehe und wieder hervor hohle dann ist das was verdeckt war weg und nur das Bild bleibt, ist das normal?

Und noch ein Problem:
Ich will überprüfen ob die Mussfelder Ausgefüllt sind mit If Not GetGadgetText(2) = "" gehts nicht wie dann?

Code: Alles auswählen

If OpenWindow(0,100,100,500,700,"Formular") 

CreateGadgetList(WindowID(0)) 
TextGadget(100,10,25,400,20,"Mit * gekennzeichnete Felder sind Mussfelder!") 
TextGadget(1,10,60,170,20,"* Vorname:") 
StringGadget(2,175,60,300,20,"") 
ButtonGadget(101, 205,650,90,25,"Abschicken") 

Repeat 
Event = WaitWindowEvent() 
Select Event 
      Case #PB_Event_Gadget 
      
       Select EventGadget() 
         Case 101 
        If Not GetGadgetText(2) = "" ;;;;;;;;;;;;Fehler Hier 
         MessageRequester("OK","OK") 
        Else 
         MessageRequester("ERROR","Füllen Sie die Mussfelder aus!") 
        EndIf 
       EndSelect 
 EndSelect 
Until Event = #PB_Event_CloseWindow 
EndIf 

Verfasst: 20.11.2007 21:05
von RSBasic

Code: Alles auswählen

If OpenWindow(0,100,100,500,700,"Formular") 

CreateGadgetList(WindowID(0)) 
TextGadget(100,10,25,400,20,"Mit * gekennzeichnete Felder sind Mussfelder!") 
TextGadget(1,10,60,170,20,"* Vorname:") 
StringGadget(2,175,60,300,20,"") 
ButtonGadget(101, 205,650,90,25,"Abschicken") 

Repeat 
Event = WaitWindowEvent() 
Select Event 
      Case #PB_Event_Gadget 
      
       Select EventGadget() 
         Case 101 
        If Not GetGadgetText(2) = Space(Len(GetGadgetText(2))) ;;;;;;;;;;;;Fehler Hier 
         MessageRequester("OK","OK") 
        Else 
         MessageRequester("ERROR","Füllen Sie die Mussfelder aus!") 
        EndIf 
       EndSelect 
 EndSelect 
Until Event = #PB_Event_CloseWindow 
EndIf 

Verfasst: 20.11.2007 21:09
von Tompazi
Ja danke funktioniert :D

Verfasst: 20.11.2007 21:11
von Kiffi
Tompazi hat geschrieben:

Code: Alles auswählen

If Not GetGadgetText(2) = "" ;;;;;;;;;;;;Fehler Hier 
  MessageRequester("OK","OK") 
Else 
  MessageRequester("ERROR","Füllen Sie die Mussfelder aus!") 
EndIf 
einfach ein wenig umstellen und das Not() raus. ;-)

Code: Alles auswählen

If GetGadgetText(2) = "" 
  MessageRequester("ERROR","Füllen Sie die Mussfelder aus!") 
Else 
  MessageRequester("OK","OK") 
EndIf 
besser noch: Die Abfrage des StringGadgets mit Trim() klammern:

Code: Alles auswählen

If Trim(GetGadgetText(2)) = ""


@RSBasic:
RSBasic hat geschrieben:

Code: Alles auswählen

If Not GetGadgetText(2) = Space(Len(GetGadgetText(2)))
öhm, wieso so kompliziert?... :shock:

Grüße ... Kiffi