Custom Window Library - Beispiel ohne CPU-Auslastung

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Custom Window Library - Beispiel ohne CPU-Auslastung

Beitrag von PMV »

Aktueller Stand:
07.02.2006 - veröffentlichung der Hilfe: online Hilfe
20.02.2006 - kleines Beispiel für die Wartezeit: Download
12.03.2006 - Beispiel ohne CPU-Auslastung: Download
-------------------------------------------------------------

Vorab, bis zur ersten Beta wird es wohl noch ein paar Wochen dauern, je
nach dem wie viel Zeit ich doch noch opfern kann auch weniger :D .
Und ich weis das erst morgen der 7. ist, aber für mich ist heute schon
vorbei und die 2:30 Stunden zähl ich nicht mehr :D

Ziel der Vorabveröffentlichung der CWL-Hilfe ist es
1. Aufmerksamkeit auf das Projekt zu lenken damit sich die jenigen, die
mir gerne helfen wollen, schon mal langsam ihre Terminplanung
entsprechend umstellen können, das noch Zeit für die Bugsuche in der
CWL übrig bleibt und das ein erster Eindruck der ausmaße der Library
ensteht.

2. Klärung von Fragen, welche bereits während der Entwicklung
entstanden sind und am besten noch vor der ersten öffentlichen Version
geklärt werden können.

3. Suche nach Freiwilligen, die sich eventuell bereit erklären, meine
Rechtschreibschwäche zu bewältigen und in der Hilfe nach
Rechtschreibfehlern suchen :D

4. Verbesserungsvorschläge für die Hilfe bereits vor der Beta

zu 1.: Die online Hilfe werde ich vermutlich bei der ersten
veröffentlichung der CWL wieder löschen. Die online Hilfe ist einzig und
alleine für jetzt gedacht, damit wirklich jeder die Hilfe einsehen kann :D
(später wird diese als CHM mit beiliegen). Außerdem liegt die Hilfe auf
einem Free Webspace, daher kann es duchaus vorkommen, das der
Seitenaufbau mal etwas langsamer ist oder die Seite kurzzeitig mal
garnicht erreichbar. Im normalfall ist sie nach spätestens 5 min wieder da.

zu 2.: Da wären folgende Fragen:
Werden Region eines Fensters von Windows bei CloseWindow() mit
gelöscht oder müssen diese nach dem Schließen manuell gelöscht
werden?
Im Gegensatz zu der PB 4.0 hab ich in der CWL die Möglichkeit eingebaut,
eine aktuelle ID intern zu speichern, so das diese nicht bei einem
entsprechenden Befehl angegeben werden muss. (siehe z.B.:
CWLUseWindow()). Durch die optionale Möglichkeit ist die Angabe der ID
bei manchen Befehlen erst als letzter Parameter an zu geben (wenn
erwünscht), was ja in PB eigentlich nicht der fall ist. Wenn die interen
Speicherung weg fallen würde, könnte ich das ganze "intuitiver" machen,
aber das müsst ihr entscheiden. Ich kanns für mich ja machen wie ich will
*gg*
CWLCreateGraphicBox() besitzt einige Optionale Parameter, was zu glaub
7 verschiedenen Prozeduren führt mit TailBite. Ist euch das so lieber, oder
hättet ihr lieber eine Struktur die ihr füllen müsstet? Dann würden die
FileX$ aus der Struktur gelesen.

zu 3.: Wer sich zum Kampf gegen die Schreibfehler bereit erklärt, bitte
mir per PN bescheid geben, damit nicht plötzlich 2 die selben Seiten
korrigieren ^_^ . Die Korrigierten Seiten dann bitte mir komplet per PN
Übermitteln :D (also den Text, nicht den HTML-Code)

zu 4.: Fals irgend etwas stört (außerer die Framanordnung und die
Tatsache, das "Previous", "Top", "Next" nicht funktionieren) bitte ich
darum, mir dies zu schildern :D . Ich bin für konstruktive Kritik natürlich
offen. Gillt auch für die Benennung der Funktion bzw so weit einschätzbar
der Sinn der Befehle. Erweiterrungswünsche bitte aber erst noch zurück
halten, die kann ich erst ab der Beta berücksichtigen :wink:

MFG PMV

-- den Kopf dieses Posts werde ich regelmäßig aktualisieren --
Zuletzt geändert von PMV am 13.03.2006 01:05, insgesamt 5-mal geändert.
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Klitzekleine Anmerkung: Mach mal den linken Frame breiter:

Code: Alles auswählen

<frameset rows="*" cols="114,*" framespacing="0" frameborder="NO" border="0">
  <frame src="navi.htm" name="leftFrame" scrolling="NO" noresize>
  <frame src="uebersicht.htm" name="mainFrame">
</frameset>
Änder die 114 mal in mind. 150 oder 200... Sonst ist das Menü abgeschnitten.
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Ja weis ich, aber das war mir egal, weils ja seiner Aufgabe gerecht war.
Aber hab grad noch mal die online Hilfe überarbeitet, jetzt sollten alle
Seiten gehen und die Navi in den Frame passen.
Für diejenigen, die es schon mal aufgerufen haben, kann sein das
ihr die einzellnen seiten dann manuell aktualisieren müsst ... hoffe zwar
das es nicht der Fall ist, aber ich hatte das problem -.-

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Da ich wohl die nächste Woche / nächsten Wochen doch nicht mehr zum
weiter machen komme und sich das ganze noch weiter verzögert hab ich
mal den Sorce kompiliert, welchen ich zum testen verwendet habe, um
euch mal das ganze in aktion zu zeigen :wink: .

Download: http://www.pmv.de.vu/CWL/CWL_Beispiel_0.57.1.zip

Zu sehen sind 3 Fenster mit Button.
Die Fenster werden unabhängig von Windows über die CWL gesteuert.
Das bedeutet das selbe ist auch für Screenanwendungen möglich.

Eingebaut ist die dynamische Sprachverwaltung, beim verharren der Maus
über einem Button fängt dieser an zu blinken (die Animationsmöglichkeit
der CWL). Fenster können minimiert, maximiert und geschlossen werden.
Um das ganze zu beenden einfach das "Fenster 1" schließen.

Sollte es scho jetzt irgend was zu mekern geben, nur raus damit. Über die
Internetleitung kann ich nicht beisen :mrgreen: . Ne aber wäre schon
freundlich wenn mir der ein oder andere sagen könnte, wie viel FPS er hat
und vorallem ob das Ganze auch unter anderen Windowsversionen als XP
läuft.

Appropo, ich hatte es bereits unter Win98 getestet, hier verschwanden
plötzlich Grafiken /:-> ... da diese aber zuanfang korrekt angezeigt
werden und dann innerhalb des Programms nicht mehr angerührt werden
... dürfte es einfach ein Fehler von Win98 sein und damit fällt dies schon
mal weg :cry: ... schade.

Und fals ihr die selben Probleme habt, nur weil die Button nicht angezeigt
werden, heißt es nicht, das die CWL auch nicht mehr auf Ereignise
reagieren muss, sprich ein klick auf das X des "Fenster 1" beendet auch
jetzt noch das Programm, auch wenn ihr es nicht mehr seht.

MFG PMV

Edit: Downloadlink aktualisiert
Zuletzt geändert von PMV am 21.02.2006 21:45, insgesamt 2-mal geändert.
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Bei mir unter XP läuft es sehr sauber, FPS bei 380, obwohl ich nebenbei noch
TV anhabe. Interessante Sache, bin ja mal gespannt, wie es weitergeht.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
125
Beiträge: 1322
Registriert: 19.09.2004 16:52
Wohnort: Neu Wulmstorf (Hamburg)
Kontaktdaten:

Beitrag von 125 »

Hab nen Bug in deinem Beispiel gefunden schließ ma Fenster 3 und änder die Sprache -> absturz

ansonsten Cool! :allright:
Bild
BildDas ist Tux. Kopiere Tux in deine Signatur und hilf ihm so auf seinem Weg zur Weltherrschaft.
Benutzeravatar
MLK
Beiträge: 267
Registriert: 01.11.2004 13:17
Wohnort: Hamburg

Beitrag von MLK »

gefällt mir sehr gut!

..und ohne 100% auslastung bestimmt noch ein bischen besser.

achja: 460 FPS
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

hui, schicke Skin engine o_O!
Bild
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Danke fürs testen. Fehler behoben und neue Version hoch geladen, dieses
mal sogar mit Readme.txt <) . Hier wird das Beispiel noch einen Tick
genauer erläutert, fals es also wen interezieren sollte :D . Link in den
beiden oberen Post, wo schon die ältere Version verlinkt war.

Hm, ich hab bei mir über 600 FPS. Aber es wäre von Vorteil, wenn die
jenigen, die nicht in ihrem Profil ihr System beschrieben haben, dies in
ihrem Post tuen würden :D .

@MLK
Ein "Delay(1)" im Mainloop ist kein Akt, aber für das Beispiel hier wegen
der FPS-Messung fehl am Platz. :wink:

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Ohne TV im hintergrund 480 FPS, aber 100% CPU last.
Wenn die Ereignisverwaltung nicht Anwendungskonform gelöst werden kann,
ist es für mich aber uninteressant. Progamme die mit Delay arbeiten, wirken sich immer störend aus. CPU last muß unter 20% bleiben.
Es laufen ja immer 40 bis 60 Prozesse, die dürfen nicht ins stocken geraten, es sei denn es ist ein Fullscreen-Spiel, da kann man sowas ja mal durchgehen lassen.
So ist es als SkinEngine erstmal nicht geeignet.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten