Français
Wünsche et Anregungen

concept: Negative Größenangabe pour Fenêtre et CreateWindow/Dlg

 
concept: Gibt on chez Fenêtre chez den Parametern pour qui Taille, une negativen Wert à, ensuite sommes qui inneren Ausmasse gemeint.

SetWindowPos également avec diesem "Feature" ausstatten wäre imho aussi sinnvoll.

cela Beispiel ici verdeutlicht cela Problem:
KompilierenMarqueSéparation
window 100,100 - 100,100
rectangle 0,0 - 99,99
waitInput
end<
pre>

erzeugt logischerweise:



Wobei wünschenswert wäre, si es eh bien un "xprofanes" antidote gäbe. alors im Prinzip quelque chose comme  
[...]  ici.

5 kB
Hochgeladen:04.12.2008
Downloadcounter191
Download
 
04.12.2008  
 




Jörg
Sellmeyer
je n'en sais rien, pourquoi que voici sur erledigt steht. je trouve qui concept super. peut-être pas avec negativen payons, mais avec einem zusätzlichen paramètre. ou bien Meinetwegen aussi avec Set("Client",1). après volonté ensuite alle la fenêtre, so erzeugt, dass qui Größenangabe comme Clientgröße gewertet wird.
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
30.05.2018  
 




RGH
... et déjà gibt es idées pour un mögliches XProfan X5! ;)

là devrait je la fois regarder, si qui Wondows-API so quelque chose hergibt.

(mais seulement fais je fois le USB-Sticks pour qui Abonnenten fertig et wende mich ensuite la fois wieder den FreeProfan-Versionen trop ...)

Salut
Roland
 
XProfan X3
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
31.05.2018  
 




Jörg
Sellmeyer
avec AdjustWindowRect erreicht on là déjà Einiges. malheureusement wird cela menu zur Clientarea gerechnet et je such grad, wohin on qui Menühöhe auslesen peux.
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.05.2018  
 




Jörg
Sellmeyer
So peux on Schonmal qui Standardsachen erschlagen:
 $H Windows.ph
 $H structs.ph
'RECT = Left&,Top&,Right&,Bottom&;
'  WS_BORDER = $800000;
'  WS_DLGFRAME = $400000;
'  WS_VSCROLL = $200000;
'  WS_HSCROLL = $100000;
'  WS_SYSMENU = $80000;
'  WS_THICKFRAME = $40000;
'  WS_DLGFRAME = $400000;
'  WS_EX_CLIENTEDGE = $200;
'  WS_EX_STATICEDGE = $20000;
Struct AdjustWindowRect = ~Rect

SubProc Créer.XWindow

    'Paramètres Handle hParent, String sClass, sText ,Int iLeft, iTop, iWidth, iHeight,fMenu
    traceoff

    Si %pcount = 4

        Paramètres Handle hParent, String sText ,Int iWidth, iHeight
        Déclarer Int iLeft, iTop
        Var Int fCenter = 1

    D'autre

        Paramètres Handle hParent, String sClass, sText ,Int iLeft, iTop, iWidth, iHeight

    EndIf

    Déclarer Mem WindowSize,Int fMenu
    Faible WindowSize,AdjustWindowRect

    With WindowSize

        .Left& = iLeft
        .Top& = iTop
        .Right& = iWidth + iLeft
        .Bottom& = iHeight + iTop

    EndWith

    With WindowSize

        Si hParent = 0

            fMenu = Not((%style de fenêtre & %10000))
            ~AdjustWindowRect(WindowSize,~WS_CAPTION | ~WS_THICKFRAME,fMenu)
            'fMenu gibt à, si un fenstermenü vorhanden ist

            Si SizeOf(fCenter) > 0

                Fenêtre (.Right& - .Left&),(.Bottom& - .Top&)

            D'autre

                Fenêtre .Left&,.Top& - (.Right& - .Left&),(.Bottom& - .Top&)

            EndIf

            SetText %hwnd,sText
            Retour %hwnd

        ElseIf Upper$(sClass) = "Dialogue"

            ~AdjustWindowRect(WindowSize,~WS_CAPTION | ~WS_DLGFRAME,fMenu)
            Retour Créer("Dialog",hParent,sText,.Left&,.Top&,(.Right& - .Left&),(.Bottom& - .Top&))

        ElseIf Upper$(sClass) = "WINDOW"

            ~AdjustWindowRect(WindowSize,~WS_CAPTION | ~WS_THICKFRAME,fMenu)
            Retour Créer("Window",hParent,sText,.Left&,.Top&,(.Right& - .Left&),(.Bottom& - .Top&))

        ElseIf Upper$(sClass) = "CHILDWINDOW"

            ~AdjustWindowRect(WindowSize,~WS_CAPTION | ~WS_THICKFRAME,fMenu)
            Retour Créer("ChildWindow",hParent,sText,.Left&,.Top&,(.Right& - .Left&),(.Bottom& - .Top&))

        EndIf

    EndWith

ENDPROC

Si &GetTickCount Mod 2

    Fenêtre Style %11111
    Var Handle hwnd = Créer("XWindow",0,»,"Hauptfenster",100,100,800,600)

D'autre

    Fenêtre Style %11111
    Var Handle hwnd = Créer("XWindow",0,"Hauptfenster zentriert",800,600)

EndIf

Imprimer suis$(%style de fenêtre & ~WS_CAPTION)
Var Handle hDlg1 = Créer("XWindow",%hwnd,"Dialog","Dialog",%winleft + 250,%wintop + 150,400,300)
Var Handle hDlg2 = Créer("XWindow",%hwnd,"Window","Fenster",%winleft + 350,%wintop + 300,330,240)
Var Handle hDlg3 = Créer("XWindow",%hwnd,"ChildWindow","ChildWindow",50,350,300,200)
Imprimer "Hauptfenster:",%winleft,%wintop,Width(hwnd),Height(hwnd)
Imprimer "Dialog",Width(hDlg1),Height(hDlg1)
Imprimer "Window",Width(hDlg2),Height(hDlg2)
Imprimer "ChildWindow",Width(hDlg3),Height(hDlg3)

Tandis que 1

    WaitInput

Wend


Mühsamer wirds, qui ganzen möglichen Stilarten trop berücksichtigen.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.05.2018  
 



Würde on simple qui inneren Maße de den Äußeren abziehen, ensuite devrait on qui ganzen Stile ou bien Randdicken pas plus auswerten là qui Differenzen cela Notwendige déjà hergeben.
 
31.05.2018  
 




Jörg
Sellmeyer
oui - mais avant qui Erstellung des Fensters, sommes qui inneren Maße oui encore pas bekannt. et qui volonté ensuite plan par AdjustWindowRect mittels qui Stile gesetzt.
il peut naturellement entier brachial seulement cela jeweilige la fenêtre erstellen et ensuite avec SetWindowPos korrigieren. mais joli ist anders...
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.05.2018  
 



déjà bien sûr,

es bleibt qui Abwägung si "schneller" et "einfacher", un Contrôle seulement unsichtbar trop erzeugen et ensuite à qui richtige Stelle trop apporter statt viele Werte (möglicherweise aus qui Registry) trop ermitteln im Unwissen si sur allen OS cela so aussi gleichermaßen ausreichend ist.

Meiner Vermutung pour est un simples Fenêtre- et Clientrect simple "effizienter" et une doch droite analoge Messung.
 
31.05.2018  
 




Jörg
Sellmeyer
cela bliebe ensuite nachzumessen...
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.05.2018  
 




Jörg
Sellmeyer
ah oui: um cela Lecture qui Menühöhe tu viens pas herum, là cela menu oui zur Client-Area zählt.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
07.06.2018  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

6.185 Views

Untitledvor 0 min.
Stringray05.01.2022
Rolf Koch15.01.2020
Thomas Zielinski06.09.2019
Pedro Miguel17.05.2019
plus...

Themeninformationen

cet Thema hat 3 participant:

Jörg Sellmeyer (6x)
iF (3x)
RGH (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie