Foro | | | | Cyberangle | ¡Hola,
Yo con el Listview.DLL Kassenverwaltung realisiert. Das funktioniert bastante bien. Yo habe sólo una kl. Problem;
In uno Groupbox Yo 3 Radiobutton zusammengefasst, Legen en nun una más beliebiges Progammfenster encima el Kassenfenster así ha se después de el Schliesung des beliebigen Progammfensters el Hintergundfarbe (sólo en el Goupbox ) en el Color de fondo des vorher geöffneten belieben Progammfensters geändert.. Das passiert aber sólo, si yo al Progammanfang después de el öffen des Listrviews InitMessages(hwnd%) aufrufe. Wenn Yo el Línea auskommentiere tritt el Fehler no en.
Kann me alguien erklären??? |
| | | | |
| | Frank Abbing | Dazu müsstest du ya una kleines lauffähiges Ejemplo zeigen. So de el Ferne lässt se sonst nichts sagen. |
| | | | |
| | | | | | | |
| | Cyberangle | Sorry,
como hätte Yo auch incluso en él kommen necesario. Anbei una Stück el Hauptschleife: KompilierenMarcaSeparaciónDeclare 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
End
|
| | | | |
| | Frank Abbing | ¡Hola Michael,
Yo kann esta Farbwechsel en me no bestätigen. Bajo XP-Home scheint me alles normal a ser. Welches Betriebssystem benutzt du porque?
Yo saber auch no, por qué el Radiobuttons y el Groupbox qué con el Listviews a tun haben könnten, komische Sache. Tiempo sehen, welche Erfahrungen el otro gemacht haben... |
| | | | |
| | Cyberangle | Yo habe Windows XP con allen Servicepacks. Wenn Yo el Kassen-Programa aufrufe Yo auch una bastante normales graues Programmfenster Mit el beiden Listviews y Groupbox. Minimiere Yo ahora el Programmfenster con el Minimieren Button así dass el Fensterbezeichnung sólo aún en el Taskleiste de Windows liegt y yo sólo todavía el Profellowfenster sehe, de el ichdas Kassenprog. y kicke entonces en el Taskleisteauf el Kassenprg-Button en el Programmfenster otra vez a abierto, dan stimmt el Hintergund innerhalb el Groupbox no mehr. Kommentiere Yo ahora el Línea KompilierenMarcaSeparación de y wiederhole el minimierung des Programmfenster así tritt el Fehler no mehr en. |
| | | | |
| | Jörg Sellmeyer | En me es ebenfalls alles normal. Keine falso dargestellte Groupbox. Tuve ähnliches auch veces aber sólo en el Zusammenhang con Prfellow. Leider weiß Yo no mehr, si Yo irgendwie lösen podría. Tritt el porque auch, si el Programa de el Explorer heraus aufrufst. Tal vez hecho se sí así ya todos. Bau doch veces una RePaint una, si el Programa otra vez maximiert se. PrFellow producido manche Controls en propio Art y como lo (desafortunadamente, desafortunadamente) ya seit Jahren no mehr weiterentwickelt se, hält lo natürlich weder con el Profano- todavía con el Windoesentwicklung Schritt. Yo mich auch schweren Herzens getrennt pero la neue XProfEd es wirklich bien con el Möglichkeiten, el el Codefaltungen bieten. Und fürs Erstellen la ventana hay sí ROC, el mittlerweile auch ya de el Kinderschuhen fuera es. Saludo Jörg |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 18.03.2007 ▲ |
| |
| | Cyberangle | ¡Hola Jörg,
Yo el Programmtest ahora nacheinander en el Profano-Pad y el RGH ProfanED geladen y F7 ausgeführt. En beiden tritt el gleiche Fehler en. Sobald Yo el Programa minimiere y otra vez vergrößere ( Siehe JPG-Bild más oben). Der neue XPrfED se ejecuta todavía no bajo XPorfan 8. Ausserden tritt el Fehler en efecto en, si yo einbeliebiges fremdes Progamm (z.B. Freecell) encima mein Progamm lege y luego otra vez schließe |
| | | | |
| | Jörg Sellmeyer | Was es porque, si InitMessages antes el Erstellen des Listviews aufrufst? |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 18.03.2007 ▲ |
| |
| | Frank Abbing | InitMessages() startet el Subclassing des Parentfensters, also la ventana, en el el Listviews angesiedelt voluntad. Dabei es egal, wann lo aufgerufen se, sólo el Parentfenster (meisstens wohl %HWND) muss disponible ser. Listviews puede durchaus auch später erstellt voluntad. Hab en el Subclassing-Quellcode otra vez nachgesehen. Nirgendwo benutze Yo API, welche Einfluss nehmen en el Grafik de %HDC oder %HWND. GDI32 se nada verwendet. Yo vermute el Fehler irgendwo como Fehlfunktion su Systems, tal vez auch una fremdes Programa. Starte deinen Code veces, después de du todos aktiven Programas final hast. |
| | | | |
| | | Evtl. una Problema des Grafikkartentreibers? Puesto que hay lo algunos merkwürdige Sachen... |
| | | | |
| | Michael Wodrich | Sí, vermute Yo auch.
a) El Farbauflösung es no 32 pero 16-Bit. Es una Möglichkeit para kleine Grafikfehler.
b) Der Grafiktreiber debería en el neuesten Stand gebracht voluntad.
Tuve solche Problemas auch, el son con un neuen Treiber todos verschwunden.
Schöne Grüße Michael Wodrich |
| | | Programmieren, das spannendste Detektivspiel der Welt. | 18.03.2007 ▲ |
| |
|
RespuestaTema opciones | 11.299 Views |
ThemeninformationenDieses Thema ha 6 subscriber: |