Fenster im Fenster Öffnen und schließen
Verfasst: 21.08.2008 23:08
so ich bin's wieder
jetzt bin ich soweit das mein chat wunderbar funktioniert.
nun möchte ich einige Smileys einbauen.
hab ja in einer Antwort meiner Letzten Frage gesehen wie ich
das in meinen Code einbau.
mein neues Problem ist jetzt ich möchte mir wenn ich eine Schaltfläche Drücke ein neues Fenster Öffnen wo dann die ganzen Smileys angezeigt Werden. soweit hab ich das auch hinbekommen allerdings wenn ich das Fenster Jetzt Schließe, Schließt sich nicht nur das Smiley Fenster sondern der ganze chat wie krig ich also ein fenster auf button druck geöffnet und geschlossen ohne das sich der ganze Chat schließt, mit dem ich dann am besten auch noch auf das eigendliche fenster zugreifen kann? sprich wenn ich nen smiley anklicke zb das er den smiley text dann ans ende des string gadgets des ersten fensters sendet *g* ich glaube so langsam ist es wohl mal zeit nen bissl code zu Posten zur besseren verständniss*g*
über aufräum, Verbesserungs vorschläge und vor allem antworten
würd ich mich natürlich sehr freuen *g*
mfg FrEeKsTeR
jetzt bin ich soweit das mein chat wunderbar funktioniert.
nun möchte ich einige Smileys einbauen.
hab ja in einer Antwort meiner Letzten Frage gesehen wie ich
das in meinen Code einbau.
mein neues Problem ist jetzt ich möchte mir wenn ich eine Schaltfläche Drücke ein neues Fenster Öffnen wo dann die ganzen Smileys angezeigt Werden. soweit hab ich das auch hinbekommen allerdings wenn ich das Fenster Jetzt Schließe, Schließt sich nicht nur das Smiley Fenster sondern der ganze chat wie krig ich also ein fenster auf button druck geöffnet und geschlossen ohne das sich der ganze Chat schließt, mit dem ich dann am besten auch noch auf das eigendliche fenster zugreifen kann? sprich wenn ich nen smiley anklicke zb das er den smiley text dann ans ende des string gadgets des ersten fensters sendet *g* ich glaube so langsam ist es wohl mal zeit nen bissl code zu Posten zur besseren verständniss*g*
Code: Alles auswählen
If InitNetwork() = 0
MessageRequester("Fehler", "Konnte Netzwerk nicht aufbauen")
Else
InitKeyboard()
EndIf
#IDM_EnterKey = 101
Enumeration
#Window_0
#Window_1
#Window_2
EndEnumeration
Enumeration
#ScrollBar_0
#Smiley_0
#Image_0
#String_0
#Button_0
#Listview_1
#Button_1
#Listview_0
#String_1
#Text_0
#Button_3
#Tree_0
#Button_4
#Button_5
EndEnumeration
Global Image0
;- Catch Images
Image0 = CatchImage(0, ?Image0)
;- Images
DataSection
Image0:
IncludeBinary "H:\MyChat\Client\bannerreflex1.bmp"
EndDataSection
If OpenWindow(#Window_1, 216, 0, 280, 160, "Nickname", #PB_Window_MinimizeGadget | #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
If CreateGadgetList(WindowID(#Window_1))
StringGadget(#String_1, 30, 70, 210, 20, "")
TextGadget(#Text_0, 110, 50, 50, 20, "Nickname")
ButtonGadget(#Button_3, 70, 100, 130, 40, "Login")
AddKeyboardShortcut(#Window_1 , #PB_Shortcut_Return, #Text_0)
Repeat
lEventID = WaitWindowEvent()
If lEventID = #PB_Event_Menu Or EventGadget() = #Button_3
name$ = GetGadgetText(#String_1)
If name$ <> ""
lquit = 1
Else
MessageRequester("Fehler", "Bitte Nickname eingeben")
EndIf
EndIf
If lEventID = #PB_Event_CloseWindow
End
EndIf
Until lquit = 1
CloseWindow(#Window_1)
EndIf
If OpenWindow(#Window_0, 220, 0, 596, 486, "Broadway Radio Chat", #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget | #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
If CreateGadgetList(WindowID(#Window_0))
ImageGadget(#Image_0, 0, 0, 600, 133, Image0)
StringGadget(#String_0, 10, 420, 410, 20, "")
ButtonGadget(#Button_0, 430, 420, 70, 20, "Senden")
ButtonGadget(#Smiley_0, 10, 430, 70, 20, "Smileys")
ButtonGadget(#Button_1, 510, 420, 80, 20, "Schließen")
WebGadget(#Listview_1, 160, 140, 430, 270, "")
ListViewGadget(#Listview_0, 10, 140, 150, 270)
AddKeyboardShortcut(#Window_0 , #PB_Shortcut_Return, #String_0)
SetWindowColor(#Window_0, RGB($CC,$00,$00))
SetGadgetColor(#Listview_1, #PB_Gadget_BackColor, RGB($99,$99,$99))
SetGadgetColor(#Listview_0, #PB_Gadget_BackColor, RGB($99,$00,$00))
SetGadgetColor(#String_0, #PB_Gadget_BackColor, RGB($55,$55,$55))
Smiley1$ = "<img src='http://www.purebasic.fr/german/images/smiles/icon_biggrin.gif' alt='Very happy' />"
Smiley2$ = "<img src='http://www.rubstudent.de/RSV/Forum/images/smilies/new/banana.gif' alt='Dancing Banana' />"
HTML1$ = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>" + #CR$
HTML1$ + "<html xmlns='http://www.w3.org/1999/xhtml'>" + #CR$
HTML1$ + "<head>" + #CR$
HTML1$ + "<meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1' />"
HTML1$ + "<title>PureChat v0.1</title>" + #CR$
HTML1$ + "<style type='text/css'>" + #CR$
HTML1$ + " body {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;}" + #CR$
HTML1$ + "</style>" + #CR$
HTML1$ + "</head>" + #CR$
HTML1$ + "<body bgcolor="+Chr(34)+"#676767"+Chr(34)+"onload='javascript: window.scrollTo(0,10000);'>" + #CR$
ChatLog$ = "" + #CR$
HTML2$ + "</body>" + #CR$
HTML2$ + "</html>"
SetGadgetItemText(#Listview_1,#PB_Web_HtmlCode,HTML1$ + ChatLog$ + HTML2$)
SetActiveGadget(#String_0)
Port = 6832
authpack$ = "rb9256"
ConnectionID = OpenNetworkConnection("127.0.0.1", Port)
If ConnectionID = 0
MessageRequester("Fehler", "Server Verbindsung Fehlgeschlagen")
End
Else
SendNetworkString(ConnectionID, authpack$+"\"+name$)
Repeat
NEventID= NetworkClientEvent(ConnectionID)
EventID = WaitWindowEvent()
If EventGadget() = #Smiley_0
If OpenWindow(#Window_2, 216, 0, 390, 320, "Smiley List", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar )
If CreateGadgetList(WindowID(#Window_2))
ScrollBarGadget(#ScrollBar_0, 380, 10, 20, 350, 0, 10, 3, #PB_ScrollBar_Vertical)
ButtonGadget(#Button_4, 10, 280, 170, 30, "Benutzen")
ButtonGadget(#Button_5, 190, 280, 170, 30, "Schließen")
Repeat
SmEventID = WaitWindowEvent()
Until SmEventId = #PB_Event_CloseWindow
EndIf
EndIf
EndIf
If EventID = #PB_Event_Menu Or EventGadget() = #Button_0
Text$ = GetGadgetText(#String_0)
If Text$ <> ""
SendNetworkString(ConnectionID, name$+":=> "+Text$+Chr(160))
SetGadgetText(#String_0, "")
EndIf
EndIf
If EventGadget() = #Button_1
Quit = 1
EndIf
If NEventID = #PB_NetworkEvent_Data
*Buffer = AllocateMemory(1000)
ZeroMemory_(*Buffer,1000)
ReceiveNetworkData(ConnectionID, *Buffer, 1000)
message$ = PeekS(*Buffer,1000)
bufmes = CountString(message$, Chr(160))
For c=1 To bufmes
onestring$ = StringField(message$, c, Chr(160))
String$ = StringField(onestring$, 1, "/")
String2$ = StringField(onestring$, 1, ":")
If String$ = "clientlist"
ClearGadgetItemList(#Listview_0)
String$ = StringField(onestring$, 2, "/")
ulc = CountString(String$,",")
ClearGadgetItemList(#Listview_0)
For k=1 To ulc
Stringu$ = StringField(String$, k, ",")
SendMessage_(x,#EM_SETTARGETDEVICE, 0, 0)
AddGadgetItem(#Listview_0, -1, Stringu$)
Next
ElseIf String2$ = name$
strl = Len(onestring$)
namel = Len(name$)
strl - namel
strl - 1
string3$ = Right(onestring$,strl)
string3$ = ReplaceString(string3$,"<","<")
string3$ = ReplaceString(string3$,">",">")
string3$ = ReplaceString(string3$,":D",Smiley1$)
string3$ = ReplaceString(string3$,":banana:",Smiley2$)
ChatLog$ + string3$ + "<br />" + #CR$
SetGadgetItemText(#Listview_1,#PB_Web_HtmlCode,HTML1$+ChatLog$+HTML2$)
ZeroMemory_(*Buffer,1000)
Else
string3$ = ReplaceString(onestring$,"<","<")
string3$ = ReplaceString(onestring$,">",">")
string3$ = ReplaceString(onestring$,":D",Smiley1$)
string3$ = ReplaceString(onestring$,":banana:",Smiley2$)
ChatLog$ + string3$ + "<br />" + #CR$
SetGadgetItemText(#Listview_1,#PB_Web_HtmlCode,HTML1$+ChatLog$+HTML2$)
ZeroMemory_(*Buffer,1000)
EndIf
Next
SetActiveGadget(#String_0)
EndIf
If EventID = #PB_Event_SizeWindow
ResizeGadget(#Listview_1,160, 140,WindowWidth(#Window_0)-160,WindowHeight(#Window_0)-205)
ResizeGadget(#String_0,0,WindowHeight(#Window_0)-30,WindowWidth(#Window_0)-180,25)
ResizeGadget(#Listview_0,10, 140,150,WindowHeight(#Window_0)-205)
imagesize = WindowWidth(#Window_0)-595
ResizeGadget(#Image_0,0+imagesize/2,0,600,133)
ResizeGadget(#Button_0, WindowWidth(#Window_0)-166, WindowHeight(#Window_0)-26, 70, 20)
ResizeGadget(#Button_1, WindowWidth(#Window_0)-86 , WindowHeight(#Window_0)-26, 80, 20)
ResizeGadget(#Smiley_0, 10, WindowHeight(#Window_0)-56, 70, 20)
EndIf
If EventID = #PB_Event_CloseWindow
Quit = 1
EndIf
Until Quit=1
EndIf
EndIf
EndIf
EndIf
würd ich mich natürlich sehr freuen *g*
mfg FrEeKsTeR