Forum | | | | Cyberangle | Salut,
j'ai avec qui Listview.DLL Kassenverwaltung realisiert. cela funktioniert droite bien. j'ai seulement un kl. Problem;
dans einer Groupbox habe je 3 Radiobutton zusammengefasst, poser dans eh bien un d'autre beliebiges Progammfenster sur cela Kassenfenster so hat sich pour qui Schliesung des beliebigen Progammfensters qui Hintergundfarbe (seulement dans qui Goupbox ) sur qui Hintergrundfarbe des auparavant geöffneten belieben Progammfensters geändert.. cela passiert mais seulement, si je am Progammanfang pour dem öffen des Listrviews InitMessages(hwnd%) aufrufe. si je qui la ligne auskommentiere tritt qui faute pas sur.
peux mir cela quelqu'un expliquer??? |
| | | | |
| | Frank Abbing | en supplément müsstest du déjà un kleines lauffähiges Beispiel montrer. So aus qui Ferne peut sich sonst rien dire. |
| | | | |
| | | | | | | |
| | Cyberangle | Sorry,
là hätte je aussi selbst sur elle venons doit. Anbei un Stück qui Hauptschleife: KompilierenMarqueSéparationDeclare bereich#,listview&,lv2&,lvdll&,text$,bytes&,speicher&,y&,z&
Declare schleife%,nrdll&,nred1&,nred2&,nred3&,nred4&,delline& Var Listview, Ndll u. Schleife
Declare datu&,kont&,numm&,vorg&,einz&,ausz&,grupp&,usttext2&,usttext3&,usttext4&Var. für edits
Declare radi1&,radi2&,radi3&,zugang!,abgang!,zeile&,butt1&,butt2&
Declare ust0!,ust1!,ust2!,lastfocus&,Datum$,konto%,nummer%,vorgang$,ab$,eb$
Declare ust!,ustcheck!,ende%, zug2&,abg2&,ustges&,ab2&,eb2&,gesamt!
Declare t$,n$,anz% Var für messagebox
Def GetSysColor(1) !USER32,GetSysColor
Def @GetKeyState(1) !User32,GetAsyncKeyState
Def NumbMessages(2) !NEdit.dll,InitMessages Nummerisches Zahlenfeld
$I Listview_Funktionen.inc
lvdll&=usedll(Listview.dll)
SetTrueColor 1
Decimals 2
Windowstyle 26+512
Windowtitle Kassenverwaltung Programm
Window 0,0-%maxX,%maxY
Cls GetSysColor(15)
alle Listviews öffenen und die Vorgangsdaten ins 2. LV übernehmen
lv2&=CreateListView(%hwnd,%hinstance,RGB(0,0,0),RGB(255,255,255),-1,$31)
IColumn(lv2&,Vorgang wählen,100,0)
AutoSortListview(lv2&,1)
ShowListView(lv2&,720,160,107,334)
listview&=CreateListView(%hwnd,%hinstance,Rgb(0,0,0),Rgb(255,255,255),-1,$31) Leeres Listview
IColumn(listview&,Datum,100,2) Spalten erstellen
IColumn(listview&,Konto,55,1)
IColumn(listview&,Nummer,55,1)
IColumn(listview&,Vorgang,135,0)
IColumn(listview&,Einzahlung,60,1)
IColumn(listview&,Auszahlung,60,1)
IColumn(listview&,UST,60,1)
IColumn(listview&,Anfbst,65,1)
IColumn(listview&,Endbst,60,1)
AutoSortListview listview&,1,0,1,1,0,0,0,0,0
ShowListView(listview&,10,160,687,400)
REM
InitMessages(%hwnd)
Menue erstellen
PopUp &Datei
Appendmenu 201,Datei &öffnen
Appendmenu 202,Datei &schließen
AppendMenu 203,&Neuer Monat
Separator
AppendMenu 204,&Beenden
PopUp &Tools
AppendMenu 401,&Anfangsbestand eingeben
Appendmenu 402,&Monatsabschluß
PopUp &Hilfe
Appendmenu 601,&info
Appendmenu 602,&Optionen
ust0!=0 UST mit 0 Prozent
Create(Text,%hwnd,Spaltensummen :,210,562,120,24)
Create(Text,%hwnd,Endbestand :,210,592,120,29)
zug2&=Create(edit,%hwnd,xxxx,370,562,62,24) Summenreihe unter dem LV
abg2&=Create(edit,%hwnd,x,430,562,62,24)
ustges&=Create(edit,%hwnd,xx,490,562,62,24)
ab2&=Create(edit,%hwnd,xx,550,562,62,24)
eb2&=Create(edit,%hwnd,xxxx,370,592,61,24)
datu& = Create(DateEdit,%hwnd,,10,125,80,24) edits erzeugen
ControlEdit sind Zahlenfelder rechtsbündig
usttext2& = Create(Text,%hwnd, +Str$(ust0!),515,30,32,36) Text in ust-Box
usttext3& = Create(Text,%hwnd, +Str$(ust1!),515,66,32,36)
usttext4& = Create(Text,%hwnd,Str$(ust2!),515,116,32,36)
radi1& =Create(RadioButton,%hwnd,%,580,40,32,35)
radi2& =Create(RadioButton,%hwnd,%,580,78,32,35)
radi3& =Create(RadioButton,%hwnd,%,580,110,32,35)
grupp&= Create(GroupBox,%hwnd,UST.,500,15,150,139) Ust Box erzeugen
Clear ende%
While ende% < 1
WaitInput
If MenuItem (204) Menueaufruf >Datei - beenden<
inc ende%
inc schleife%
EndIf
If MenuItem (201) Menueaufruf >Datei - Datei Öfnnen<
@ShowWindow(butt1&,1)
@ShowWindow(butt2&,1)
EnableMenu 401,1 menu Anfagsbestand deaktivieren
Endif
If MenuItem (401) Menueaufruf >Tools - Anfangbestand eingeben<
datum$ = date$(1)
ab$ = Input$(Bitte geben Sie den Anfangsbestand ein: ,Bestands-Eingabe,ab$)
datum$ = Input$(Bitte geben Sie das Datum ein: ,Datums-Eingabe,date$(0))
EnableMenu 401,1 menu Anfagsbestand deaktivieren
@ShowWindow(butt1&,1) Buttons sichtbar
@ShowWindow(butt2&,1)
EndIf
Wend
DestroyWindow(nred1&) nummerisches Feld zerstören
DestroyWindow(nred2&)
DestroyWindow(nred3&)
DestroyWindow(nred4&)
EraseListview(listview&) Listviewstrukturen entfernen
EraseListView(lv2&)
DestroyWindow(listview&) Profan Befehl, um Fensterobjekte zu zerstören
DestroyWindow(lv2&)
CloseMessages(%hwnd) Subclassing des Parentfensters entfernen
Fin
|
| | | | |
| | Frank Abbing | allô Michael,
je peux cette Farbwechsel chez mir pas bestätigen. sous XP-Home scheint mir alles normal trop son. Welches Betriebssystem benutzt du car?
je wüsste aussi pas, pourquoi qui Radiobuttons et qui Groupbox quoi avec dem Listviews trop 1faire avons könnten, komische l'affaire. la fois voyons, quelle Erfahrungen qui anderen gemacht avons... |
| | | | |
| | Cyberangle | j'ai Windows XP avec allen Servicepacks. si je cela Kassen-Programme aufrufe habe je aussi un entier normales graues Programmfenster avec den beiden Listviews et qui Groupbox. Minimiere je maintenant cela Programmfenster avec dem Minimieren Button so dass qui Fensterbezeichnung seulement encore dans qui Taskleiste de Windows liegt et je seulement encore cela Profellowfenster vois, de dem ichdas Kassenprog. et kicke ensuite dans qui Taskleisteauf den Kassenprg-Button um cela Programmfenster wieder trop ouvrir, dan stimmt qui Hintergund dedans qui Groupbox pas plus. Kommentiere je maintenant qui la ligne KompilierenMarqueSéparation aus et wiederhole qui minimierung des Programmfenster so tritt qui faute pas plus sur. |
| | | | |
| | Jörg Sellmeyer | chez mir ist également alles normal. aucun faux dargestellte Groupbox. je hatte ähnliches aussi la fois mais seulement im Zusammenhang avec Prfellow. malheureusement sais je pas plus, si je es irgendwie lösen konnte. Tritt cela car aussi, si Du cela Programme aus dem Explorer heraus aufrufst. peut-être erledigt sich oui so déjà cela ganze. Bau doch la fois un RePaint un, si cela Programme wieder maximiert wird. PrFellow erzeugt manche Controls sur eigene Art et là es (malheureusement, malheureusement) déjà depuis Jahren pas plus weiterentwickelt wird, hält es naturellement weder avec qui Profan- encore avec qui Windoesentwicklung Schritt. je hab mich aussi schweren Herzens getrennt mais qui neue XProfEd ist wirklich bien avec den Opportunités, qui qui Codefaltungen bieten. et pour Erstellen des Fensters gibt es oui ROC, qui mittlerweile aussi déjà aus den Kinderschuhen raus ist. Salut Jörg |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 18.03.2007 ▲ |
| |
| | Cyberangle | allô Jörg,
j'ai den Programmtest maintenant nacheinander dans den Profan-Pad et dans den RGH ProfanED geladen et F7 fonctionnement. chez beiden tritt qui gleiche faute sur. Sobald je cela Programme minimiere et wieder vergrößere ( Siehe JPG-Bild plus dessus). qui neue XPrfED fonctionne doch encore pas sous XPorfan 8. Ausserden tritt qui faute oui aussi sur, si je einbeliebiges fremdes Progamm (z.B. Freecell) sur mon Progamm lege et ensuite wieder schließe |
| | | | |
| | Jörg Sellmeyer | quoi ist car, si Du InitMessages avant dem Erstellen des Listviews aufrufst? |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 18.03.2007 ▲ |
| |
| | Frank Abbing | InitMessages() startet cela Subclassing des Parentfensters, alors des Fensters, dans dem qui Listviews angesiedelt volonté. Dabei ist es égal, quand es aufgerufen wird, seulement cela Parentfenster (meisstens wohl %HWND) muss vorhanden son. Listviews peut durchaus aussi später erstellt volonté. Hab im Subclassing-Quellcode nochmal nachgesehen. Nirgendwo benutze je API, quelle Einfluss prendre sur qui Grafik de %HDC ou bien %HWND. GDI32 wird gar pas verwendet. je vermute den faute irgendwo comme Fehlfunktion votre Systems, peut-être aussi un fremdes Programme. Starte deinen Code la fois, après que du alle aktiven Programme finissez la hâte. |
| | | | |
| | | Evtl. un Problem des Grafikkartentreibers? là gibt es quelques merkwürdige Sachen... |
| | | | |
| | Michael Wodrich | oui, vermute je aussi.
a) qui Farbauflösung ist pas 32 mais 16-Bit. c'est une Possibilité pour kleine Grafikfehler.
b) qui Grafiktreiber sollte sur den neuesten Stand gebracht volonté.
je hatte solche Probleme aussi, qui sommes avec einem neuen Treiber alle verschwunden.
belle Grüße Michael Wodrich |
| | | Programmieren, das spannendste Detektivspiel der Welt. | 18.03.2007 ▲ |
| |
|
répondreOptions du sujet | 11.017 Views |
Themeninformationencet Thema hat 6 participant: |