ich bin langsam am Verzweifeln. Ich versuche nun schon seit über einer Stunde dass Popup-Menü zum anzeigen zum bringen. Leider wird es immer nicht angezeigt. Kann mir einer helfen?
Code: Alles auswählen
; -------------------------------------------------------
; | EEditor v1.0 |
; | (C) by Markus Büttner, Juli - September 2010 |
; | OS: Windows |
; -------------------------------------------------------
UsePNGImageDecoder()
CompilerIf #PB_Compiler_OS = #PB_OS_Windows
If InitScintilla("Scintilla.dll") = 0
MessageRequester("EEditor 1.1","Konnte Scintilla.dll nicht finden.") : End
EndIf
CompilerEndIf
;Variablen
;{
#Name = "EEditor 1.1"
Global suchrichtung.s
dirbuf.s = GetCurrentDirectory()
fontname.s = "Courier New"
cid.l = 1
nid.l = 1
fid.l = 1
fontsizel.l
;}
Procedure ErrorHandle()
wahl = MessageRequester("Error " + Str(ErrorCode()),"File: " + ErrorFile() + Chr(13) + "Message: " + ErrorMessage()+Chr(13)+"Möchtest du diesen Fehler melden?",#PB_MessageRequester_YesNoCancel)
If wahl = #PB_MessageRequester_Yes
If CreateMail(0,"EEditor Anwender","EEditor Fehler")
SetMailBody(0,"Errorcode: " + Str(ErrorCode()) + Chr(13)+"ErrorFile: "+ErrorFile()+Chr(13)+"ErrorMessage: "+ErrorMessage())
AddMailRecipient(0,"mb1-anlagen@web.de",#PB_Mail_To)
SendMail(0,"smtp.web.de",25,1)
Repeat
progress = MailProgress(0)
Delay(300)
Until progress = #PB_Mail_Error Or progress = #PB_Mail_Finished
If progress = #PB_Mail_Finished
MessageRequester(#Name,"Mail wurde erfolgreich versandt.")
Else
MessageRequester(#Name,"Mail konnte nicht versandt werden.")
EndIf
EndIf
EndIf
End
EndProcedure
;OnErrorCall(@ErrorHandle())
XIncludeFile "ScintillaHelper.pbi"
XIncludeFile "eeditordll.pb"
LoadIcons()
If OpenWindow(0,-4,-2,1000,750,#Name,#PB_Window_MaximizeGadget|#PB_Window_MinimizeGadget|#PB_Window_Maximize)
;Gadgets
;{
PanelGadget(0,0,30,WindowWidth(0),WindowHeight(0)-50)
AddGadgetItem(0,0,"Neue Datei",ImageID(100))
ScintillaGadget(100,0,0,WindowWidth(0)-5,WindowHeight(0)-75,#Null)
ScintillaSendMessages(100)
EnableGadgetDrop(0,#PB_Drop_Private|#PB_Drop_Files|#PB_Drop_Text,#PB_Drag_Copy|#PB_Drag_Move,#PB_Drag_Move)
;}
;Menü
;{
CreateImageMenu(0,WindowID(0),#PB_Menu_ModernLook)
MenuTitle("&Datei")
MenuItem(0,"Neu"+Chr(9)+"Strg+N",ImageID(100))
MenuItem(1,"Öffnen"+Chr(9)+"Strg+O",ImageID(101))
MenuItem(2,"Speichern"+Chr(9)+"Strg+S",ImageID(102))
MenuItem(15,"Speichern unter..."+Chr(9)+"Strg+Umsch+S",ImageID(115))
MenuItem(10,"Drucken"+Chr(9)+"Strg+P",ImageID(110))
MenuBar()
MenuItem(4,"Datei schließen"+Chr(9)+"Strg+W",ImageID(104))
MenuBar()
MenuItem(3,"Beenden"+Chr(9)+"Alt+F4",ImageID(103))
MenuTitle("&Bearbeiten")
MenuItem(16,"Neu Laden",ImageID(116))
DisableMenuItem(0,16,1)
MenuItem(9,"Rückgängig",ImageID(109))
MenuItem(11,"Wiederherstellen",ImageID(111))
MenuBar()
MenuItem(5,"Kopieren",ImageID(105))
MenuItem(6,"Einfügen",ImageID(106))
MenuItem(7,"Ausschneiden",ImageID(107))
MenuBar()
MenuItem(14,"Suchen"+Chr(9)+"Strg+F",ImageID(114))
MenuBar()
MenuItem(12,"Datum einfügen"+Chr(9)+"F5",ImageID(112))
MenuTitle("&Format")
MenuItem(8,"Schriftart",ImageID(108))
MenuTitle("&?")
MenuItem(13,"Über...",ImageID(113))
CreatePopupImageMenu(1,#PB_Menu_ModernLook)
MenuItem(209,"Rückgängig",ImageID(109))
MenuBar()
MenuItem(205,"Kopieren",ImageID(105))
MenuItem(206,"Einfügen",ImageID(106))
MenuItem(207,"Ausschneiden",ImageID(107))
;}
;ToolBar
;{
CreateToolBar(0,WindowID(0))
ToolBarImageButton(0,ImageID(100))
ToolBarImageButton(1,ImageID(101))
ToolBarImageButton(2,ImageID(102))
ToolBarImageButton(15,ImageID(115))
ToolBarImageButton(10,ImageID(110))
ToolBarSeparator()
ToolBarImageButton(4,ImageID(104))
ToolBarSeparator()
ToolBarImageButton(9,ImageID(109))
ToolBarImageButton(11,ImageID(111))
ToolBarImageButton(5,ImageID(105))
ToolBarImageButton(6,ImageID(106))
ToolBarImageButton(7,ImageID(107))
ToolBarSeparator()
ToolBarImageButton(14,ImageID(114))
ToolBarImageButton(12,ImageID(112))
ToolBarImageButton(8,ImageID(108))
ToolBarSeparator()
ToolBarImageButton(13,ImageID(113))
ToolBarToolTip(0,0,"Neu")
ToolBarToolTip(0,1,"Öffnen")
ToolBarToolTip(0,2,"Speichern")
ToolBarToolTip(0,4,"Datei Schließen")
ToolBarToolTip(0,5,"Kopieren")
ToolBarToolTip(0,6,"Einfügen")
ToolBarToolTip(0,7,"Ausschneiden")
ToolBarToolTip(0,8,"Schriftart")
ToolBarToolTip(0,9,"Rückgängig")
ToolBarToolTip(0,10,"Drucken")
ToolBarToolTip(0,11,"Wiederherstellen")
ToolBarToolTip(0,12,"Datum einfügen")
ToolBarToolTip(0,13,"Über...")
ToolBarToolTip(0,14,"Suchen")
ToolBarToolTip(0,15,"Speichern unter")
;}
;Shortcuts
;{
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_N,0)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_O,1)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_S,2)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_W,4)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_C,5)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_V,6)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_X,7)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_Z,9)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_P,10)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_Y,11)
AddKeyboardShortcut(0,#PB_Shortcut_F5,12)
AddKeyboardShortcut(0,#PB_Shortcut_F1,13)
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_Shortcut_F,14)
;}
;Programmparameter
;{
DateiName$=ProgramParameter()
If DateiName$ <> ""
OFile(DateiName$,fid,nid)
fid + 1 : nid + 1
EndIf
;}
;Event-Schleife
;{
Repeat
filename.s = GetGadgetItemText(0,GetGadgetState(0))
EventID.l = WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
Quit = 1
Case #PB_Event_Menu
Select EventMenu()
Case 0
AddGadgetItem(0,nid,"Neue Datei (" + Str(nid) + ")",ImageID(100))
ScintillaGadget(100 + fid,0,0,WindowWidth(0)-5,WindowHeight(0)-75,#Null)
ScintillaSendMessages(100 + fid)
nid + 1 : fid + 1
Case 1
file$ = OpenFileRequester(#Name,dirbuf + "\datei.txt","Textdateien|*.txt|HTML-Dateien|*.html;*.xhtml|Alle Dateien|*.*",0)
If file$
OFile(file$,fid,nid)
fid+1 : nid+1
EndIf
Case 2
If FindString(GetGadgetItemText(0,GetGadgetState(0)),"Neue Datei",1) <> 0
save$ = SaveFileRequester(#Name,dirbuf + "\Neue Datei.txt","Textdateien|*.txt|HTML-Dateien|*.html;*.xhtml|Alle Dateien|*.*",0)
If save$
SaveFile(save$,100+GetGadgetState(0))
EndIf
Else
file.s = GetGadgetItemText(0,GetGadgetState(0))
SCI_SaveFile(100+GetGadgetState(0),file)
EndIf
Case 3
Quit = 1
Case 4
RemoveGadgetItem(0,GetGadgetState(0))
nid - 1 : fid - 1
OpenGadgetList(0)
Case 5
ScintillaSendMessage(100+GetGadgetState(0),#SCI_COPY)
Case 6
ScintillaSendMessage(100+GetGadgetState(0),#SCI_PASTE)
Case 7
ScintillaSendMessage(100+GetGadgetState(0),#SCI_CUT)
Case 8
newfont = FontRequester(fontname,10,0)
If newfont
fontname = SelectedFontName()
fontsize = SelectedFontSize()
ScintillaSendMessage(100+GetGadgetState(0),#SCI_STYLESETFONT,32,@fontname)
ScintillaSendMessage(100+GetGadgetState(0),#SCI_STYLESETSIZE,32,fontsize)
ScintillaSendMessage(100+GetGadgetState(0),#SCI_STYLECLEARALL)
EndIf
Case 9
ScintillaSendMessage(100+GetGadgetState(0),#SCI_UNDO)
Case 10
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SETPRINTMAGNIFICATION,0)
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SETPRINTCOLOURMODE,#SC_PRINT_BLACKONWHITE)
Case 11
ScintillaSendMessage(100+GetGadgetState(0),#SCI_REDO)
Case 12
AddGadgetItem(100+GetGadgetState(0),0,FormatDate("%dd.%mm.%yyyy %hh:%ii",Date()))
Case 13
AboutDialog()
Case 14
find$ = SearchDialog()
If find$ <> ""
If suchrichtung = "0"
pos = ScintillaSendMessage(100+GetGadgetState(0),#SCI_GETSELECTIONSTART) - 1
Else
pos = ScintillaSendMessage(100+GetGadgetState(0),#SCI_GETSELECTIONEND) + 1
EndIf
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SETSEL,pos,pos)
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SEARCHANCHOR)
If suchrichtung = "0"
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SEARCHNEXT,#SCFIND_MATCHCASE,@find$)
Else
ScintillaSendMessage(100+GetGadgetState(0),#SCI_SEARCHPREV,#SCFIND_MATCHCASE,@find$)
EndIf
EndIf
Case 15
asf$ = SaveFileRequester(#Name,"","Textdateien|*.txt|HTML-Dateien|*.html;*.xhtml;*.htm|Alle Dateien|*.*",0)
If asf$
SaveFile(asf$,100+GetGadgetState(0))
EndIf
Case 209
ScintillaSendMessage(100+GetGadgetState(0),#SCI_UNDO)
Case 205 : ScintillaSendMessage(100+GetGadgetState(0),#SCI_COPY)
Case 206 : ScintillaSendMessage(100+GetGadgetState(0),#SCI_PASTE)
Case 207 : ScintillaSendMessage(100+GetGadgetState(0),#SCI_CUT)
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
Case 0
If EventType() = #PB_EventType_RightClick
DisplayPopupMenu(1,WindowID(0)) ;Hier passiert nichts
EndIf
EndSelect
EndSelect
Until Quit = 1
;}
Else
MessageRequester(#Name,"Konnte kein Fenster öffnen",0)
EndIf
End
Mfg
Markus
