Italia
Wünsche und Anregungen

Künftige XProfan-Versionen - Wünsche?

 
- Page 1 -


Das Trackmenu  - wenn ich mich recht erinnere - war die Prozedur immer nur brauchbar solange man auf dem hwnd arbeitet, einfach wegen der Positionsangabe.

Mein Vorschlag, wenn Trackmenu keine Parameter bekommt, dann das Trackmenu an Mausposition erstellen.

Mittlerweile hatte ich mir hierfür eine Proc geschrieben, aber mich ja trotzdem Jahrelang gequält (P²4.5=>P7) und damit sich andere nicht ebenso quälen...
KompilierenMarkierenSeparieren
Proc Trackmenu_bymousepos

    Declare Gmp#,Dx&,Dy&
    Dim Gmp#,8
    External("user32","ClientToScreen",%Hwnd,Gmp#)
    Dx&=Long(Gmp#,0)
    Dy&=Long(Gmp#,4)
    External("user32","GetCursorPos",Gmp#)
    Trackmenu (Long(Gmp#,0)-Dx&),(Long(Gmp#,4)-Dy&)
    Dispose Gmp#

oc

 
08.09.2006  
 



 
- Page 4 -



Jörg
Sellmeyer
Ich fände es gut, wenn Height(%hwnd) auch eine evtl. vorhandene Toolbar berücksichtigt. Im Moment werden die Buttons nämlich einfach überdeckt.
Saluto
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.10.2007  
 



...ich hätte auch einen Wunsch:
Wenn im Programm so einiges Creatiert wird, muss das zum Schluss ja auch mit Delete..., Destroy... oder Dispose... entfernt werden. Hier wäre ein Befehl oder eine Funktion wünschenswert, die ich beim Beenden des Programmi einfach aufrufe und die dann das Freischreiben im Speicher automatisch erledigt.
 
23.10.2007  
 




Frank
Abbing

Hier wäre ein Befehl oder eine Funktion wünschenswert, die ich beim Beenden des Programmi einfach aufrufe und die dann das Freischreiben im Speicher automatisch erledigt.


Sowas ist in neuen Windowsversionen (ab XP glaube ich) eingebaut. Beim Beenden eines Programms werden dessen Speicher wieder freigegeben, die es besetzt hatte.
 
23.10.2007  
 



@Frank

Dann wären also Befehle wie DeleteObject.. und Dispose... nicht mehr nötig ???
 
23.10.2007  
 




RGH
Horst Horn
@Frank

Dann wären also Befehle wie DeleteObject.. und Dispose... nicht mehr nötig ???


Hier irrst Du!
In Prozeduren müßten die lokalen Dinger trotzdem gezielt vernichtet werden, damit es bei häufigem Aufruf derselben nicht zur Katastrophe kommt.

Außerdem müßte ich eine Verwaltung der erzeugten Objekte einbauen, damit ich weiß welches Handle zu was gehört ... und das würde XProfan nicht unbedingt beschleunigen ...

Ich werde es aber mal im Hinterkopf behalten. DestroyWindow und DeleteObject ließen sich aber vielleicht zu einem von beiden zusammenfassen. Von Fensterhandles kann ich die Klasse ermitteln. Läßt sich keine Fensterklasse ermitteln, muß es ja ein Objekt sein.

Saluto
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
23.10.2007  
 



@Roland


Ich werde es aber mal im Hinterkopf behalten.


Hab doch gewusst, dass man mit Dir rechnen kann
 
23.10.2007  
 




Jörg
Sellmeyer

DestroyWindow und DeleteObject ließen sich aber vielleicht zu einem von beiden zusammenfassen.


Sehr gute Idee!

Wie sieht es denn mit anderen Wünschen hier aus dem Foro aus:
Tray Icons: [web]https://xprofan.com/thread.core?t=5750[/web]
iFs Frage bzgl Enter: [web]https://xprofan.com/thread.core?t=4635[/web]
und UseFont + LoadBmp: [web]https://xprofan.com/thread.core?t=5760[/web]
Meine eigene Anregung wg. Tranzparenz in Bildern:


Die transparente Farbe als zusätzlichen (optionalen) Parameter bei den Bitmap-Befehlen und Funktionen!!!
LoadBmp S, X,Y ;N[,$FFFFF]

Wo bei da naturalmente dann auch noch wünschenswert wäre, ein Static transparent zu machen (falls das überhaupt geht)

Stringlänge von getText$: [web]https://xprofan.com/thread.core?t=4631[/web]
Nicht daß ichs benötigen würde, aber vielleicht ist hier ja was dran
Unicode: [web]https://www.rgh-soft.de/forum01/read.php?f=9&i=2969&t=2964[/web]
Neuer ChooseDir-Dialog:
[web]https://xprofan.com/thread.core?t=2179&start=168[/web]
und wie sieht es mit den Callbacks aus? Ich kann mich erinnern, daß beim Subclassing Probleme auftreten.

Saluto
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
23.10.2007  
 




Jac
de
Lad
Und ein Parameter, um Hauptfenster transparent zu erstellen...
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
23.10.2007  
 




Frank
Abbing

Dann wären also Befehle wie DeleteObject.. und Dispose... nicht mehr nötig ???


DeleteObject gibt einen Handle frei. Benutzt dein Programm nur ein paar davon, ist es tatsächlich nicht erforderlich, sie zu löschen. Werden aber im Programmablauf laufend Handle reserviert, dann schon, weil irgendwann Windows Handle-Liste voll ist.
Mit Dispose verhält es sich genauso.

Deiner Frage habe ich aber entnommen, dass du am Programmende mit einem Rund-Um-Schlag alles freigeben willst, was reserviert wurde. Ab XP ist das eigentlich unnötig, weil Windows sowieso die Programmspeicher entlädt.
Allerdings gehört die Freigabe zum guten Ton und sollte von jedem Programmer vorgenommen werden..
 
23.10.2007  
 



@Frank


Allerdings gehört die Freigabe zum guten Ton und sollte von jedem Programmer vorgenommen werden..


So sieht in einem meiner Programme der gute Ton zum Schluss aus:
KompilierenMarkierenSeparieren
PROC PROGRAMM_ENDE

    CloseMessages(%hwnd)
    freedll lvdll&
    freedll icon_dll&
    Dispose icons#
    Dispose itemtexts#
    Dispose nurso#
    Dispose bereich#
    Dispose maus_bereich#
    USERMESSAGES 0
    DELETEOBJECT font0%
    DELETEOBJECT font1%
    DELETEOBJECT font2%
    DELETEOBJECT font3%
    Assign #1,tempL$
    ERASE #1
    Assign #2,tempR$
    ERASE #2
    I%=LEN(path1$)
    path1$=LEFT$(path1$,I%-1)
    I%=LEN(path2$)
    path2$=LEFT$(path2$,I%-1)
    Case (I%=3):path2$=LEFT$(path2$,2)
    ASSIGN #5,pfad$+COMM_DATAS+log_name$
    REWRITE #5
    PRINT #5,path1$
    PRINT #5,path2$
    CLOSE #5
    EE%=1

ENDPROC


Da sind schon einige Sachen zu berücksichtigen. Daher wäre es von Vorteil, wenn alles in einem Rutsch, wie Du so richtig schreibst, bereinigt werden potuto
 
23.10.2007  
 




Jörg
Sellmeyer
Es wäre ja schon nützlich, wenn jeder dieser Befehle mehrere Parameter akzeptieren/verarbeiten würde:
KompilierenMarkierenSeparieren
freedll lvdll&,icon_dll&
Dispose icons#,itemtexts#,nurso#,bereich#,maus_bereich#
USERMESSAGES 0 das kannste Dir ersparen
DELETEOBJECT font0%,font1%,font2%,fon
pre>

Man kann naturalmente auch eine Prozedur schreiben:
KompilierenMarkierenSeparieren
Saluto
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
23.10.2007  
 




Frank
Abbing

USERMESSAGES 0 das kannste Dir ersparen


Sicher? Ich hatte beim Programmende mal fiese Abstürze, bis ich das einbaute. Seit dem steht es in jedem meiner Codes.


Es wäre ja schon nützlich, wenn jeder dieser Befehle mehrere Parameter akzeptieren/verarbeiten würde:


In der Tat!
 
24.10.2007  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

20.168 Views

Untitledvor 0 min.
holmol9330.05.2013
Stephan Sonneborn02.03.2012
Julian Schmidt09.11.2011

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie