Deutsch
Forum

Fenster fixieren

 
- Seite 1 -



Erasmus.Herold
Hallöchen ...

Ich möchte ein Fenster fixieren, also verhindern, dass es via Maus verschoben werden kann. Diesen Quellcode nutze ich zur Erzeugung des Fensters.
verkaeuferfenster_darueber% = Create("Dialog",%hWnd,"Mitarbeiterverwaltung",28,120,1870,940)
SETSTYLE verkaeuferfenster_darueber%,(GETSTYLE(verkaeuferfenster_darueber%)-$80000)' neues Fenster ohne Button rechts oben, auch kein X

Ich habe im Internet alte Ideen von 2003 gefunden, die ließen sich nicht erfolgreich in XProfan3 testen. Hat jemand einen Lösungsvorschlag für mich?

Danke - Erasmus
 
11.10.2018  
 



« Dieser Beitrag wurde als Lösung gekennzeichnet. »


Matthias
Arlt
Es geht auch einfacher, aber nur, wenn das Systemmenü nicht komplett entfernt wird...
var hDlg& = Create("Dialog",%hWnd,"Test",100,100,400,300)
var hMenu& = external("USER32","GetSystemMenu",hDlg&,0)
external("USER32","DeleteMenu",hMenu&,$F010,0)

while 1

    waitInput
    case (%key = 2) : break

wend


Gruß Matthias
 
WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia
15.10.2018  
 




Erasmus.Herold
Hat jemand Erfahrung mit dem "Festkleben" von Fenstern?
 
15.10.2018  
 




H.Brill
Das dauerhafte Fixieren habe ich auch noch nicht herausgefunden.
Nur, daß es immer wieder an die Ursprungs - Position springt.
Bei einem normalen Fenster ist es ja einfach. Einfach die wm_move
Message als UserMessage definieren. Das wm_move setzt bei Größen-
Änderung die alte Position + Größe.
Declare Long  ende, x1, y1, x2, y2
UserMessages $0003, $0005' wm_Move $0005 = wm_size
WindowTitle "Verkäuferfenster"
Window 640, 400
ende = 0
x1 = %WinLeft : y1 = %WinTop : x2 = 640 : y2 = 400

WhileNot ende

    WaitInput
    Case %Key = 2 : ende = 1

    If %UMessage = $0003

        SetWindowPos %Hwnd = x1, y1

    ElseIf %UMessage = $0005

        SetWindowPos %HWnd = x1, y1 - x2, y2

    EndIf

EndWhile

End

Wie das aber bei einem Dialog gehen soll, weiß ich nicht. Dieser
empfängt die Nachricht ja schon gar nicht.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
15.10.2018  
 




Manfred
Barei
Hallo Erasmus,

schaumal hier, so mach ich es immer wenn ich einen Dialog brauche der nicht verschoben werden soll.
Bei "ProgPfad$" deinen Pfad angeben wo das Bild gespeichert ist.
Bei mir ist das Bild in einer DLL.

Ich hoffe Du kannst damit was anfangen.

Gruß
PROC Benutzer_anmelden

    DECLARE AnmeldenDLG&, AnmeldenENDE%,STATICBITMAP1&
    Declare Benutzer%, Pwort%, Esc%, OK%

    Proc Textausgabe

        StartPaint STATICBITMAP1&
        TextColor RGB(15,15,31),-1
        DrawText 20, 100, "Benutzer:"
        DrawText 20, 130, "Passwort:"
        EndPaint

    EndProc

    WindowStyle 16 + 64
    AnmeldenDLG& = Create("Window",%HWND,"Login",(%maxx/2 - 280/2),(%maxy/2 - 280/2),280,280)
    USEFONT "MS Sans Serif",13,0,0,0,0
    STATICBITMAP1& = CREATE("HPIC",-1,ProgPfad$ + "\BMP\LOGIN.BMP")
    Textausgabe
    Create("BITMAP",AnmeldenDLG&,STATICBITMAP1&,0000,0000)
    Benutzer% = create("Edit",AnmeldenDLG&, "",90,100,90,20)
    Pwort% = create("Edit",AnmeldenDLG&, "",90,130,90,-20)
    Esc% = Create("Button",AnmeldenDLG&,"Abbruch",050,220,70,25)
    OK% = Create("Button",AnmeldenDLG&,"Anmelden",160,220,70,25)
    SETFOCUS(Benutzer%)
    AnmeldenENDE% = 0

    WHILENOT AnmeldenENDE%

        WAITINPUT

        If Clicked(Esc%)

            AnmeldenENDE% = 1

        ENDIF

    EndWHILE

    DESTROYWINDOW(AnmeldenDLG&)

EndProc

WINDOWTITLE "DUMMY HAUPTFENSTER"
WINDOWSTYLE 63
WINDOW (%maxx-300),10-280,80
CLS RGB(0,0,0)
Color 10,0
PRINT "Bitte aufs Systemmenükreuz klicken "
Benutzer_anmelden'Dialog aufrufen!

230 kB
Hochgeladen:15.10.2018
Ladeanzahl135
Herunterladen
 
Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 |
15.10.2018  
 




Matthias
Arlt
Es geht auch einfacher, aber nur, wenn das Systemmenü nicht komplett entfernt wird...
var hDlg& = Create("Dialog",%hWnd,"Test",100,100,400,300)
var hMenu& = external("USER32","GetSystemMenu",hDlg&,0)
external("USER32","DeleteMenu",hMenu&,$F010,0)

while 1

    waitInput
    case (%key = 2) : break

wend


Gruß Matthias
 
WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia
15.10.2018  
 




Erasmus.Herold
Wow - ganz lieben Dank an euch alle für die vielen Tipps.

Dieser Ansatz war kurz und einfach.
var hMenu& = external("USER32","GetSystemMenu",hDlg&,0)
external("USER32","DeleteMenu",hMenu&,$F010,0)

Dankeschön !!!
 
16.10.2018  
 




Erasmus.Herold
Könnten wir dieses Fenster motivieren, rechts oben
kein "X" zum Schließen anzuzeigen.

Ich möchte über einen Button schließen, somit auch
kein "%key = 2 anbieten?

Habe über Windowstyle keine Lösung gefunden,
vielleicht auch falsch angewendet?!

Bitte eine kurze Lösung. Dankeschön.
 
13.11.2018  
 




E.T.

 
XProfan X3
Grüße aus Sachsen... Mario
WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte...
13.11.2018  
 




Erasmus.Herold
Danke für deine Antwort.
Irgendwie finde ich nicht den richtigen Ansatz, deinen Vorschlag einzubauen.

Bisher erstelle ich mein Fenster wie folgt.
var hDlg& = Create("Dialog",%hWnd,"Test",100,100,400,300)
var hMenu& = external("USER32","GetSystemMenu",hDlg&,0)
external("USER32","DeleteMenu",hMenu&,$F010,0)

Bitte ein kurzer Tipp.
 
14.11.2018  
 




E.T.
Entfernt nicht ganz, aber deaktiviert
var hDlg& = Create("Dialog",%hWnd,"Test",100,100,400,300)
var hMenu& = external("USER32","GetSystemMenu",hDlg&,0)
Def GetSystemMenu(2) !"USER32","GetSystemMenu"
Def EnableMenuItem(3) !"USER32","EnableMenuItem"
external("USER32","DeleteMenu",hMenu&,$F010,0)
EnableMenuitem(GetSystemMenu(hDlg&,0),$F060,1)

while 1

    waitInput
    case (%key = 2) : break

wend

 
XProfan X3
Grüße aus Sachsen... Mario
WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte...
14.11.2018  
 




Erasmus.Herold
Dankeschön. Das ist prima.
 
15.11.2018  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

5.883 Betrachtungen

Unbenanntvor 0 min.
Gast.0815 vor 13 Tagen
Stringray09.05.2022
RudiB.20.03.2022
Normann Strübli31.03.2020
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


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