DLL für Dark Basic Pro

Fragen zu allen anderen Programmiersprachen.
MrOlsen
Beiträge: 2
Registriert: 22.11.2007 14:47

DLL für Dark Basic Pro

Beitrag von MrOlsen »

Hallo, ich schreibe gerade an einer DLL für Dark Basic Pro (Ähnlich der GlueGUI)
Soweit so gut. Aber mit dem Menü klapp es nicht so recht, irgendwie bekomme ich nicht die Handles zürück vom DB Fenster :cry:
Meine Frage, was muss ich machen damit ich ein menü im Fenster von DB Abfragen kann?
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: DLL für Dark Basic Pro

Beitrag von Kiffi »

Code?

Ansonsten:

Bild

Grüße ... Kiffi
a²+b²=mc²
MrOlsen
Beiträge: 2
Registriert: 22.11.2007 14:47

Beitrag von MrOlsen »

Oh hab ich den Code vergessen.':oops:'

Hier die Event Abfragen

ProcedureCDLL.l _Even()
raus = WaitWindowEvent(10) ; This line waits until an event is received from Windows

WindowID = EventWindow() ; The Window where the event is generated, can be used in the gadget procedures

GadgetID = EventGadget() ; Is it a gadget event?
menuid=EventMenu()
EventType = EventType() ; The event type

SetClipboardText(Str(WindowID)+"|"+Str(GadgetID)+"|"+Str(menuid)+"|"+Str(EventType))
ProcedureReturn raus
EndProcedure

Hier wird das Menü erstellt.

In DB
hwnd= call dll(1,"GetForegroundWindow")
mm=_Creatmen("&Datei",hwnd)
Add Menu 1,"Laden"
Add Menu 2,"Neu"
MenuBar
add menu 3,"Ende"

ProcedureCDLL.l _Creatmen(Text$,win)
raus=CreateMenu( #PB_Any, win)
MenuTitle(Text$)
ProcedureReturn raus
EndProcedure

ProcedureCDLL _AddMenu(nr,Text$)
MenuItem(nr, Text$)
EndProcedure

ProcedureCDLL _MBar()
MenuBar()
EndProcedure

ProcedureCDLL _SubMenu(Text$)
OpenSubMenu(Text$)
EndProcedure

ProcedureCDLL _CMbar()
CloseSubMenu()
EndProcedure

ProcedureCDLL.l _Popmem()
raus=CreatePopupMenu( #PB_Any )
ProcedureReturn raus
EndProcedure

ProcedureCDLL.l _GetMenItem(menunr,item)
If IsMenu(menunr)
raus=GetMenuItemState(menunr,item)
EndIf
ProcedureReturn raus
EndProcedure

ProcedureCDLL _SetMenuItem(menunr,me,st)
If IsMenu(menunr)
SetMenuItemState(menunr, me, st)
EndIf
EndProcedure

Warum liefert GadgetID das selbe wie Menuid? :freak:
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

MrOlsen hat geschrieben:

Code: Alles auswählen

[...]
ProcedureCDLL _AddMenu(nr,Text$)
MenuItem(nr, Text$)
EndProcedure

ProcedureCDLL _MBar()
MenuBar()
EndProcedure
[...]
sieht fast so aus, als ob Du einen Wrapper schreiben wolltest.

Diesbezüglich solltest Du Dir dringend die PB-Lizenz durchlesen:
PB-Hilfe hat geschrieben:Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren
Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.
Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Solange er es fuer sich nutzt, ist es aber auch
vollkommen egal, was in der Hilfe steht.
You can make DLLs including PureBasic commands for your own projects without any
restrictions. But it's not allowed to release simple freeware or commercial "wrapper"
DLLs to include PureBasic commands in other programming languages.
super_castle
Beiträge: 557
Registriert: 29.11.2005 15:05

Beitrag von super_castle »

Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren
Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.

was soll denn diese scheiss einschränkung ..hä..lachhaft diese nummer.
mein gott walter wo leben wir denn. jeder popelige arbeitslose bastelt so eine lizens.
Benutzeravatar
Laurin
Beiträge: 1639
Registriert: 23.09.2004 18:04
Wohnort: /dev/eth0

Beitrag von Laurin »

Es ist einfach nicht erlaubt. Da gibt es nichts, woran man rummäkeln könnte.
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

super_castle hat geschrieben:
Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren
Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.

was soll denn diese scheiss einschränkung ..hä..lachhaft diese nummer.
mein gott walter wo leben wir denn. jeder popelige arbeitslose bastelt so eine lizens.

1. Wenn du ein Produkt verkaufst, moechtest du doch auch nicht, dass
jemand dein Produkt verkauft oder gar verschenkt.

2. Fuer private Zwecke trifft der Lizenzpunkt nicht zu. Zumal in der
Lizenz bei der Installation eh etwas anderes steht (s.o.).
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

super_castle hat geschrieben:
Die PureBasic Lizenz verbietet ausdrücklich die Erstellung von DLL's, deren
Hauptfunktion es ist, als ein 'Wrapper' für PureBasic-Funktionen zu dienen.

was soll denn diese scheiss einschränkung ..hä..lachhaft diese nummer.
mein gott walter wo leben wir denn. jeder popelige arbeitslose bastelt so eine lizens.
Lachhaft und erlich gesagt ein wenig nervend find ich nur deinen "Ton".
Sorry aber jedes mal wenn du postest lese ich die selbe Nörgelei. Muss
das wirklich sein?

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
milan1612
Beiträge: 810
Registriert: 15.04.2007 17:58

Beitrag von milan1612 »

Da hat PMV leider Recht, reiß dich mal ein bisschen zusammen...
Bin nur noch sehr selten hier, bitte nur noch per PN kontaktieren
Antworten