| |
|
|
- Seite 1 - |
|
|
|
|
| |
|
|
| |
|
- Seite 4 - |
|
|
| Jörg Sellmeyer
Ich vermute mal, hinter Deinem sc.setup(...) versteckt sich so etwas wie SetWindowPos oder?
Ja, aber das ist schon deutlich mehr.
Jörg Sellmeyer
Das Ganze wird dann 10 Pixel nach rechts "neben" den Monitor geschoben.
Mal 10 nicht Plus - und das ist auch wichtig da Plus hier zu wenig ist bei Multimonitoren.
Jörg Sellmeyer
Wobei da ja auch reichen würde, es 10 Pixel neben das Hauptfenster zu verschieben.
Das Control kann 2 Haupteigenschaften haben: Als Scroll-Window und Scroll-Control. Fenster nach Hauptfenster+10 reicht nicht, Control nach Hauptfenster+10 reicht wegen dem Clipping.
Stefan M. Caillet
Klappt super.
Gern geschehen! |
|
|
| |
|
|
|
Jörg Sellmeyer |
Mal 10 nicht Plus
Natürlich Mal - wer lesen kann ist klar im Vorteil Danke für die Erklärungen. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 07.11.2008 ▲ |
|
|
|
|
Stefan M. Caillet | Habe ffolgendes bein Verstecken der MYAREA1 festgestellt: Wenn ich nun ein Static oder was auch immer auf den Dialog lege und dann das fenster minimiere und wieder vergrössere, wird das Statich wieder von der MYAREA1 überdeckt uund die MYAREA1 ist wieder aktiv. Dies ist dadurch zu verhindern, dass während die MYAEA1 verstekt ist, auch das Subclassing gestoppt wird! zum Glück reicht es, vor dem einblenden des Statics mit dem Befehl "SubClass MYDLG&, 0" Das Subclassing des Dialogfensters auszuschalten. Wenn das Static geschlossen , und die MYAREA1 wieder angezeigt wird, muss einfach mit "SubClass MYDLG&, 1" das Subclassing wieder aktiviert. Stefan |
|
|
| Ich habe grosses Glück, weil ich Mitmenschen helfen darf. Entwicklungsumgebung: XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit PC: P4/3GHz , 2GB RAM , 1700GB HD Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD | 10.11.2008 ▲ |
|
|
|
|
| Man muss noch nicht einmal das SubClassing dafür abstellen, sondern nur die sc.subClass(meinControl... (per z.B. case) aus der subClassProc ausklammern bzw. garnicht erst "anrennen" wenn diese keine Funktion tun soll. KompilierenMarkierenSeparierenalso im Prinzip lediglich ein bool iWannaThatmeinControlScrollAreaIsDoingSomeJob nötig.
Der Witz ist aber, dass es tatsächlich wohl performanter wäre, zusätzlich auch noch das SubClassing für meinControl abzustellen - also so, wie Stefan bereits angemerkt hat. In diesem Fall muss aber auch zusätzlich das Case genutzt werden sodass sc.subClass garnicht erst aufgerufen wird, wenn kein SubClassing für meinControl durchgeführt werden soll. |
|
|
| |
|
|
|
Stefan M. Caillet | Auf die Idee die Aufrufe in der SubClassProc ganz oder auch teilweise zu verhindern, bin ich auch gekommen. Da ich in meinem Programm für das Verstecken und Anzeigen der MYAREA1 zwei kleine Procs (ShowArea + HideArea) yerwende, ist es nicht nötig, noch extra ne Variable für die Steuerung der SubClassProc zu verwenden. Ich hab den Befehl "SubClass MYDLG&,n" in die beiden Procs aufgenommen, sodass ich nicht bei jedem Screen, den ich auf diesem Dialogfeld nutzen will, beim Verstecken der MYAREA1 auch noch separat ans Ausschalten des Subclassings denken muss. Somit bleibt das Programmgerüst auch für spätere verwendung universeller einsetzbar. Stefan |
|
|
| Ich habe grosses Glück, weil ich Mitmenschen helfen darf. Entwicklungsumgebung: XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit PC: P4/3GHz , 2GB RAM , 1700GB HD Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD | 10.11.2008 ▲ |
|
|
|
|
Stefan M. Caillet | Hallo iF, wiedermal ich mit ner Frage: Da %MouseX u. %MouseY auf dem Dialogfenster MYDLG& nicht Funktionieren, frage ich die MausPosition mit nachfolgendem Code ab. (Ich brauche die Koordinaten um sie an die GET_MonthCalHit Prozedur zu übermitteln.) KompilierenMarkierenSeparieren Nun leider funktionieren auch die Systemvariablen %MousePressed resp. %MouseKey nicht im Dialogfenster, ebenso wird auch Waitinput bei einem Klick auf den Kalender (egal wo) nicht verlassen. Wie kann ich also zuverlässig abfragen, ob die linke Maustaste gedrückt wurde? Der Kalender liegt übrigens direkt auf MYDLG&! Das Ganze muss auch dann Funktionieren, wenn das Subclassing des MYDLG& gerade abgeschaltet ist - also die MYAREA1 gerade versetckt ist!) Danke Gruss Stefan |
|
|
| Ich habe grosses Glück, weil ich Mitmenschen helfen darf. Entwicklungsumgebung: XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit PC: P4/3GHz , 2GB RAM , 1700GB HD Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD | 20.11.2008 ▲ |
|
|
|
|
| Asynchon mit (GetAsyncKeyState(1) & $8000) für die Linke, und ...state(2) für die Rechte, probier aber erstmal mit getKeyState.
Tip: Die mouse.inc (die z.B. auch im Cards Paket beiliegt) hat eine Funktion getMousePos die a) global und b) für Fenster die Positionen korrekt ausgibt, einfach per Parameter das Handle angeben oder Parameter weglassen. Darin sind aber auch die Funktion lm_ und rm_ definiert für Linke und Rechte Maustastenabprüfung.
Aber im Grunde solltest Du die Message vom Control beziehen, ob darauf geklickt wurde - z.B. wm_lButtonDown, oder eine auf das Control angepasstere Nachricht, denn meist beinhalten diese Nachrichten auch die Clientposition des Klicks. |
|
|
| |
|
|
|
Jac de Lad | Hallo iF!
Im Zuge des Umbaus von Gamsav auf skalierbares Fenster habe ich festgestellt, dass die Scrollsbars des Scrollcontrols nach einem Aufruf von ?.Setup() nicht bzw. fehlerhaft angezeigt werden. Vielleicht kannst du da was machen.
Jac |
|
|
| 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 | 13.02.2009 ▲ |
|
|
|
|
| ScrollControl Update: [...] - jetzt werden Scrollbarpfeile auch unter Windows Vista und 7 korrekt gezeichnet. |
|
|
| |
|
|
|
| Update vom ScrollWindow-Control, Download oben, völlig neue "Technik", absolut flimmerfrei und unschlagbar einfach in der Anwendung. KompilierenMarkierenSeparieren Jedem Fenster und Dialog können nun mit einem Aufruf funktionierende Scrollbalken hinzugefügt werden, oder Scrollareas innerhalb von Fenstern erzeugt werden. |
|
|
| |
|
|
|
| Bitte einmal diese Exe testen, ob das Scrollfenster wirklich auch unter allen Umständen immer perfekt funktioniert und die Scroller sich auch immer korrekt ansprechen lassen: [...] |
|
|
| |
|
|
|
ByteAttack | Funktioniert bei mir (Win7/64) einwandfrei. |
|
|
| |
|
|