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

Anfängerfragen zum Programmieren mit PureBasic.
Tompazi
Beiträge: 211
Registriert: 22.09.2007 15:38

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

Beitrag 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
Zuletzt geändert von Tompazi am 20.11.2007 21:10, insgesamt 3-mal geändert.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag 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
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Tompazi
Beiträge: 211
Registriert: 22.09.2007 15:38

Beitrag 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?
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@Tompazi

Code: Alles auswählen

SetGadgetColor(#Gadget,#PB_Gadget_BackColor,RGB(255,255,255))
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Tompazi
Beiträge: 211
Registriert: 22.09.2007 15:38

Beitrag von Tompazi »

Super funktioniert! :)
aber muss ich das für jedes TextGadget einzeln machen?
Zuletzt geändert von Tompazi am 20.11.2007 20:02, insgesamt 1-mal geändert.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

Tompazi hat geschrieben:Super funktioniert! =)
aber muss ich das für jedes TextGadget einzeln machen?
Ja
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Tompazi
Beiträge: 211
Registriert: 22.09.2007 15:38

Beitrag 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 
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag 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 
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Tompazi
Beiträge: 211
Registriert: 22.09.2007 15:38

Beitrag von Tompazi »

Ja danke funktioniert :D
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag 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
a²+b²=mc²
Antworten