| |
|
|
- Page 1 - |
|
Hubert Binnewies | Hallo zusammen.
Ich stehe hier vor einem besonderen Problem. Aufgrund der Tatsache das man in Windows XP verschiedene Styles einstellen kann erhalten die Dialogboxen auch verschiedene Hintergrundfarben die zum Teil nicht mit meiner eingesetzten Grafik harmonieren. Nun versuche ich das zu regeln indem ich die gesammte Dialogbox mit einer Bitmap hinterlege und darauf die diversen Editfelder,Auswahlboxen und Buttons erzeuge. Funktioniert eigendlich prächtig, bis zu dem Augenblick an dem ich auf ein %wmpaint reagieren muss. Nach dem Neuzeichnen liegt die Grafik nicht mehr hinter sondern vor den Controls. Auch ein selektieren der Controls mit einem reihum gesetzten @setfocus hat nicht den ersehnten Erfolg, dabei werden die Controls teils verstümmelt. Zum Beispiel werden Editfelder nicht mehr in 3D dargestellt oder bei Auswahlboxen fehlt das kleine Dreieck und so weiter.
Wie schaffe ich es die Grafik als Hintergrund zu definieren, so das die auch hinter den Controls bleibt?
Bitte kein XPSE ich hab da noch meine diversen Probs damit.
Danke schonmal im voraus. |
|
|
| WinXP Prof, XProfan 9.1 Newbie
Ein kluger Kopf sagte mal: "Nach dem derzeitigen Stand der Technik ist es unmöglich Programme zu schreiben, die fehlerfrei laufen!" | 19.04.2006 ▲ |
|
|
|
|
| |
|
- Page 1 - |
|
| Ich helfe Dir aber nur schematisch - keine Zeit: KompilierenMarkierenSeparierenDef Cps(6) control("STATIC",@$(2),$5400010E,@%(3),@%(4),@%(5),@%(6),@%(1),2000, %HInstance)
dlg&=createdialog...
picstatic&=cps(dlg&,"",0,0,width(dlg&),height(dlg&))
picH&=create("hpic",-1,"bilddatei.bmp")
Sendmessage(picstatic&,$172,0,picH&)/pre> Fertig.
Der Link den Du ansprichst ist ein Verweis auf die OnlineDoku welche zwar helfen kann, aber nicht vollständig ist. Hier ist die XProfanhilfe heranzuziehen. |
|
|
| |
|
|
|
Hubert Binnewies | Ich sag ja....GOLD Wert...
Das Blöde ist nur das der Waitinput nicht mehr auf KompilierenMarkierenSeparieren ragiert ich kann nur noch circa einen Button das fenster verlassen. Und der Tab in den Editfeldern funktioniert auch nicht mehr...
Oh man.......ich hab noch viel zu lernen.... |
|
|
| WinXP Prof, XProfan 9.1 Newbie
Ein kluger Kopf sagte mal: "Nach dem derzeitigen Stand der Technik ist es unmöglich Programme zu schreiben, die fehlerfrei laufen!" | 19.04.2006 ▲ |
|
|
|
|
Rolf Koch | Hi, Richtig, dies wäre nur circa ein Subclass zu erreichen, dass die Buttons und andere Elemente wieder reagieren. Wenn Du Lust hast bei Deinem %WMPaint zu bleiben, sieh Dir auf meiner Seite unter rokosoft.de und dort Profan/Meine Profancodes die Vorlage Einen Dialog farblich gestalten an. Ganz einfache Sache: Dialog neuzeichnen bei %WMPAINT und auch in der Proc aber alle Objekte per showwindow(x&,0) showwindow(x&,1) wieder Mostra. |
|
|
| |
|
|
|
| Hm eigendlich müsste er doch nur auf Getmessage umstellen oder? |
|
|
| |
|
|
|
Hubert Binnewies | Sorry R.Koch......aber die Lösungen von IF haben megariesigen Vorteil. Da ich im Begriff bin eine Kommerzielle Software zu schreiben muss ich darauf achten das da so wenig wie possibile an Schönheitsfehler auftauchen. Darum hänge ich mich ja so an Kleinigkeiten auf. Und so leid es mir auch tut, Deine Lösung ist wirklich simpel und bequem, beinhaltet aber einen Schönheitsfehler mit dem ich nicht leben kann. Und zwar: schieb mal dein Fenster circa den Bildschirmrand hinaus und zieh es zurück. Das Programm wartet mit der Aktualisierung bis die Maustaste losgelassen wird, und das sieht echt grausam aus. Das ist auch der Grund warum ich bereits nach 2 Wochen die Benutzung vom ROC verworfen habe, die Ergebnisse sehen einfach unprofessionell aus, zumal mir bei der Benutzung die Kontrolle circa die Fonts schon entglitten ist sobald ich von einem Childwindow aus ein weiteres Fenster oder Dialog öffnete in dem ich einen anderen Font verwende. Dieser wird mir dann auch in dem besagten Childwindow dargestellt sobald ich mit der Maus alleine nur nen Button berühre oder das Childwindow verdeckt wurde.
Deine Lösungen sind echt Gut und auch Simpel, aber mit den Lösungen von IF kann man echt bessere Sauereien Programmieren ohne die Kontrolle zu verlieren, auch wenn es um ein vielfaches Komplizierter ist.
(Sorry, ist echt nicht persönlich gemeint, ich muss nur auf ein paar Kleinigkeiten achten) |
|
|
| WinXP Prof, XProfan 9.1 Newbie
Ein kluger Kopf sagte mal: "Nach dem derzeitigen Stand der Technik ist es unmöglich Programme zu schreiben, die fehlerfrei laufen!" | 19.04.2006 ▲ |
|
|
|
|
Hubert Binnewies | Hallo IF...
Auch dieser Tipp war wieder GOLD wert.... BOAH....was damit alles überwachen kann....goil....
War Goldrichtig..... |
|
|
| WinXP Prof, XProfan 9.1 Newbie
Ein kluger Kopf sagte mal: "Nach dem derzeitigen Stand der Technik ist es unmöglich Programme zu schreiben, die fehlerfrei laufen!" | 19.04.2006 ▲ |
|
|
|
|
Rolf Koch | [quote:b3fcf52860] Hm eigendlich müsste er doch nur auf Getmessage umstellen oder? [/quote:b3fcf52860] Naklar wenn es programmtechnisch geht Meinen Erfahrungen her ist es als Hauptschleifen Wartebefehl mit Getmessage manchmal sehr problematisch. Aber wie gesagt, wenn man darauf direkt aufbaut. Klar |
|
|
| |
|
|
|
Rolf Koch | [quote:1d94c7bdd6] Darum hänge ich mich ja so an Kleinigkeiten auf. Und so leid es mir auch tut, Deine Lösung ist wirklich simpel und bequem, beinhaltet aber einen Schönheitsfehler mit dem ich nicht leben kann. [/quote:1d94c7bdd6] Deswegen schrieb ich ja, wenn Du bei Deiner alten Methode bleiben willst. Ich selbst mag es auch nicht besonders mit WMPAINT zu arbeiten.
[quote:1d94c7bdd6] Und zwar: schieb mal dein Fenster circa den Bildschirmrand hinaus und zieh es zurück. Das Programm wartet mit der Aktualisierung bis die Maustaste losgelassen wird, und das sieht echt grausam aus. [/quote:1d94c7bdd6] Ich glaube das ist per mich nix neues Deswegen ist in Roc ja nun auch ein Subclassmangager enthalten.
[quote:1d94c7bdd6] Das ist auch der Grund warum ich bereits nach 2 Wochen die Benutzung vom ROC verworfen habe, die Ergebnisse sehen einfach unprofessionell aus, zumal mir bei der Benutzung die Kontrolle circa die Fonts schon entglitten ist sobald ich von einem Childwindow aus ein weiteres Fenster oder Dialog öffnete in dem ich einen anderen Font verwende. Dieser wird mir dann auch in dem besagten Childwindow dargestellt sobald ich mit der Maus alleine nur nen Button berühre oder das Childwindow verdeckt wurde. [/quote:1d94c7bdd6] Nagut, aber ROC erstellt im eigentlichen Sinne so wie es von Profan vorgegeben ist. Würde ich mehr Ressonance vom User bekommen - wie Dein Problem dann bräuchte ich es nicht zu riechen, was den User stört. Aber kenne ich ja bereits. Roc ist unter der Haube mächtiger als man denkt. Aber trotzdem muss man im erstellten Code doch noch ein bisschen händisch arbeiten.
[quote:1d94c7bdd6] Deine Lösungen sind echt Gut und auch Simpel, aber mit den Lösungen von IF kann man echt bessere Sauereien Programmieren ohne die Kontrolle zu verlieren, auch wenn es um ein vielfaches Komplizierter ist. [/quote:1d94c7bdd6] Stimmt. Ich arbeite auch lieber mit Staticpics. [quote:1d94c7bdd6] (Sorry, ist echt nicht persönlich gemeint, ich muss nur auf ein paar Kleinigkeiten achten) [/quote:1d94c7bdd6] Ist doch klar. Das muss jeder. Ist ja auch der richtige Weg mit Statics und Pics drauf - Ich mag diese Dinger *lol* Aber wie Du siehst, haben die Teile auch ihre Kehrseite. Versuch mal Transparenz. |
|
|
| |
|
|
|
| Jojo, da hat Rolf wohl recht.
Wenn Du tatsächlich eine possibile saubere Umgebung herstellen möchtest - dann kann ich Dir nur den Tip geben Dir den WindowProc und Messagebasierten Aufbau von z.B. Okrea anzueignen. (Source liegt ja im Paket bei.)
Dein Programm muß dann:
a) im FastMode laufen b) eine eigene wProc haben c) einen eigenen Messagehandler haben
Solange Du im nicht-Fastmode programmierst wird die Anwendung in manchen Situationen unprofessionell reagieren - ebenso wie im FastMode wenn Du nicht auf wichtige Messages reagierst.
Rolfs Object-Creator zielte bisher erfolgreich darauf ab, mittels den reinen XProfan-Messagemethoden Millionen Situationen unter einen Hut zu bekommen. (Respekt Rolf - keine Frage!)
Dein Anspruch jedoch erwartet entweder a) reine Handarbeit welche Dich noch oft-genug zum Verzweifeln bringen wird, oder b) einen Objekt-Creator der kommenden Generation. |
|
|
| |
|
|
| |
|
- Page 2 - |
|
|
Rolf Koch | [quote:23f0fbd8a9]b) einen Objekt-Creator der kommenden Generation. [/quote:23f0fbd8a9] Nadann viel Spass! Wie sagte (zitiere ich immer gerne) bereits der Schöpfer von VisualWindow Maik Strohfeldt? Wenn einer sowas programmiert hat, isser reif per die Klappse (so in der Art) |
|
|
| |
|
|
|
| Viel Divertimento? Wir gehen alle fest davon aus das DU diesen Objekt-Creator herstellen wirst... |
|
|
| |
|
|
|
Rolf Koch | Ich sitze hier in meinem mit gummibefüllten Zimmer und grübele circa den Object Creator. Naja, nen Schatten hab ich sowieso schon - also .... Weiter gehts !!! |
|
|
| |
|
|