Français
Forum

Listview et InitMessages

 

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???
 
Viele Grüsse
Michael
17.03.2007  
 




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.
 
17.03.2007  
 



[tb]minimalbeispiel[/tb]
 
17.03.2007  
 




Cyberangle
Sorry,

là hätte je aussi selbst sur elle venons doit. Anbei un Stück qui Hauptschleife:
KompilierenMarqueSéparation
Declare 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,Dateiffnen
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
 
Viele Grüsse
Michael
18.03.2007  
 




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...
 
18.03.2007  
 




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.

36 kB
Kurzbeschreibung: ici un Screenbild
Hochgeladen:18.03.2007
Downloadcounter82
Download
 
Viele Grüsse
Michael
18.03.2007  
 




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
 
Viele Grüsse
Michael
18.03.2007  
 




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.
 
18.03.2007  
 



Evtl. un Problem des Grafikkartentreibers? là gibt es quelques merkwürdige Sachen...
 
18.03.2007  
 




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é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

11.048 Views

Untitledvor 0 min.
Ernst19.05.2016
iF20.12.2012
Andreas Koch02.09.2012
Frank Vorholzer10.05.2012
plus...

Themeninformationen



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