Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan

XProfan Alles rund um die Programmiersprache XProfan.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26970, Antworten: 4223
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50963, Antworten: 1397
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3361, Antworten: 128
Gehe zum ersten neuen Beitrag Pc lahmt plötzlich
Aufrufe: 186, Antworten: 6
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7670, Antworten: 186
Gehe zum ersten neuen Beitrag PC fährt nicht mehr hoch.
Aufrufe: 0, Antworten: 0
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 329, Antworten: 19
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 28, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 34, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 69, Antworten: 6
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 26.07.2009, 05:15   #1 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 28.06.2009
Beiträge: 14
Standard Verschwundene Grafikelemente

Für Dialogboxen etc. möchte ich Bitmapfelder nutzen. Über MCls und StartPaint...EndPaint erstelle ich die Grafik (Hintergrund, Rahmen, Text und skaliertes Icon).

Mein Problem: Die Bitmap zeigt (außer dem Icon) die Grafikelemente leider nicht. Lasse ich das Icon weg, funktioniert es einwandfrei.

Was mache ich falsch? Hat jemand eine Idee?

Dazu ein Testcode (lauffähig):
Code:
Cls
Def API_LoadImage(6) ! "USER32", "LoadImageA" 
Var Dll& = @UseDll("Shell32.dll")
Var Nr$ = "#14"
Var hIcon& = API_LoadImage(Dll&, @Addr(Nr$), 1, 48, 48, 0)
MCls 180, 70, @RGB(0, 191, 191)
StartPaint -1
    DrawIcon hIcon&, 10, 10
    UsePen 1, 1, @RGB(255, 0, 0)
    UseBrush 0, @RGB(255, 0, 0)
    Rectangle 2, 2 - 178, 68
    UseFont "Arial", 18, 8, 1, 0 ,0
    TextColor @RGB(255, 255, 255), -1
    DrawText 70, 25, "Bitmap-Test"
EndPaint
Var hPic& = @Create("hPic", 0, "&MEMBMP")
DrawPic hPic&, 20, 20; 0 'zeigt erstellte Grafik
'Fehlerhafte Bitmap (?):
Var hBitm& = @Create("Bitmap", %hWnd, hPic&, 20, 120)
WaitInput
DeleteObject hIcon&, hPic&
FreeDll Dll&
End
__________________
Windows 7 und XProfan 11.2a
Peter_T ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 26.07.2009, 10:40   #2 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Bangkok
 
Registriert seit: 09.02.2009
Ort: Bangkok
Beiträge: 686
Standard

Wie soll es denn aussehen, bei mir sieht es so aus mit deinem Code. Ich denke das soll so sein.
Wenn ja liegt es an deinem System. Du solltest mal versuchen das Icon als letztes zu zeichnen.
Ich habe auch XProfan 11.2a und Windows XP SP 3
Du solltest vielleicht auch einen Screenshot von dir dazu tun
__________________
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai.
http://dieterzornow.gmxhome.de

Geändert von Bangkok (26.07.2009 um 10:49 Uhr)
Bangkok ist offline   Mit Zitat antworten
Alt 27.07.2009, 06:36   #3 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 28.06.2009
Beiträge: 14
Standard

Bei mir funktioniert es leider nicht! Welche Systemeinstellungen soll ich vornehmen?

Es sieht bei mir so aus:

__________________
Windows 7 und XProfan 11.2a
Peter_T ist offline   Mit Zitat antworten
Alt 27.07.2009, 08:43   #4 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Beitrag

@Peter
Bei mir ist das gleiche Problem mit der Anzeige des Icon
Hab den Code umgeschrieben. Mit zusätzlichen Parametern kannst du dann 'dein Ding machen.' Geht doch oder ?

Zitat:
Cls
Def API_LoadImage(6) ! "USER32", "LoadImageA"

PROC GRAFIK
DECLARE dll&,hicon&
PARAMETERS spalte%,zeile%,nr$,text$
Dll& = @UseDll("Shell32.dll")
hIcon& = API_LoadImage(Dll&, @Addr(Nr$), 1, 48, 48, 0)
MCls 180, 70, @RGB(0, 191, 191)
StartPaint -1
UsePen 1, 1, @RGB(255, 0, 0)
UseBrush 0, @RGB(255, 0, 0)
Rectangle 2, 2 - 178, 68
UseFont "Arial", 18, 8, 1, 0 ,0
TextColor @RGB(255, 255, 255), -1
DrawText 70, 25, text$
EndPaint
Var hPic& = @Create("hPic", 0, "&MEMBMP")
'-------------------------------------------
Var hBitm& = @Create("Bitmap", %hWnd, hPic&, spalte%, zeile%)
DrawIcon hIcon&, (spalte%+10), (zeile%+10)
'-------------------------------------------
DeleteObject hIcon&, hPic&
FreeDll dll&
ENDPROC

grafik 50,75,"#7","Floppi"
grafik 50,150,"#9","Festplatte"
WaitInput
End
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de

Geändert von horsthorn (27.07.2009 um 12:51 Uhr)
horsthorn ist offline   Mit Zitat antworten
Alt 27.07.2009, 13:53   #5 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Bangkok
 
Registriert seit: 09.02.2009
Ort: Bangkok
Beiträge: 686
Standard

@Peter: Ist dein Screenshot so zu interpretieren, dass DrawPic noch geht und es scheitert beim Erstellen der Bitmap ? Wenn es so ist würde ich das Bild mal abspeichern und neu einladen und dann die Bitmap erstellen und auch mal ansehen. Ich kann leider nichts ausprobieren, da es ja bei mir geht. Könnte dann unter Umständen am Speicher hängen.

@Horstein Beispiel geht aber nur im Hauptfenster. Wie es aus dem ersten Posting hervorgeht will er es für Dialoge verwenden. Dann müsste das Icon bei jedem Überdecken neu gezeichnet werden, da es ja kein Bestandteil der Bitmap ist.
__________________
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai.
http://dieterzornow.gmxhome.de
Bangkok ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 27.07.2009, 13:57   #6 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Beitrag

Die Frage bleibt aber, warum klappt die Anzeige bei dir und bei Peter und mir nicht ?
Was sollte da umgestellt werden ?
Kann es an der Grafikkarte liegen oder....?

...und auf Dialogfenster kann man doch gezielt mit Startpaint dialogfenster& arbeiten
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Alt 27.07.2009, 14:35   #7 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Bangkok
 
Registriert seit: 09.02.2009
Ort: Bangkok
Beiträge: 686
Standard

An der Grafikkarte denke ich nicht, da das Ganze im Speicher passiert. Versuche mal das Icon mit Create("HIcon" zu erstellen, vielleicht geht es so. Oder mit der Api ExtractIconex. Vielleicht ist loadimage nicht das richtige für diesen Zweck.
Drawicon kann man ja auch ohne ein Handle benutzen. Einfach mal alles probieren
Auf Dialogfelder kann man schreiben und zeichnen aber es verschwindet beim Überdecken, da Roland das zweite Fenster nur dem Hauptfenster zur Verfüging stellt
Ich habe auch keine Ahnung warum es bei mir geht und bei euch nicht.
__________________
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai.
http://dieterzornow.gmxhome.de

Geändert von Bangkok (27.07.2009 um 14:56 Uhr)
Bangkok ist offline   Mit Zitat antworten
Alt 28.07.2009, 01:00   #8 (Direktlink)
Stammuser
 
Registriert seit: 04.04.2009
Ort: Lübeck
Beiträge: 264
Standard

Bei mir wird es auch wie bei Peter und Horst angezeigt.
Aber Anzeigeprobleme habe ich mir im Moment mit einem WIN-Optimierungstool eingehandelt. Der Texthintergrund beim Popupmenü in den XProfan-Programmen ist nun weiß und wer weis, was sich noch verändert hat??? Bei anderen Programmen ist mir das noch nicht aufgefallen.
Also ein XProfan- und oder Einstellungsproblem?


Geändert von THFR (28.07.2009 um 01:15 Uhr)
THFR ist offline   Mit Zitat antworten
Alt 28.07.2009, 09:08   #9 (Direktlink)
RGH
Forenmaskottchen
 
Benutzerbild von RGH
 
Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
Standard

@THFR: Das sieht nach einem Einstellungsproblem aus. Das hatte ich auch schon und es waren nicht nur XProfan-Programme davon betroffen. Über die Displayeinstellungen kann man die Menüfarben wieder korrigieren.
Welches Win-Optimierungstool hat den Effekt ausgelöst?

Gruß
Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c
AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c


http://www.xprofan.de

Geändert von RGH (28.07.2009 um 09:25 Uhr)
RGH ist offline   Mit Zitat antworten
Alt 28.07.2009, 09:50   #10 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 28.06.2009
Beiträge: 14
Standard

Danke für die Tipps!

Versucht habe ich es jetzt mit dem Speichern über eine externe Datei: Bildschirmausschnitt mit SaveBmp sichern und danach sofort wieder laden mit einem zweiten @Create("hPic"... und dann erst die @Create("Bitmap"... erstellen. Dies funktioniert!!! Das Ergebnis ist OK, der Weg dahin aber etwas umständlich.

Gibt es eine Möglichkeit aus einer Speicherbitmap (MCls) die Grafik direkt in eine externe Datei zu speichern?

Den Weg über die Zwischenablage habe ich auch probiert, dies funktioniert bei mir leider auch nicht.
__________________
Windows 7 und XProfan 11.2a
Peter_T ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 28.07.2009, 10:54   #11 (Direktlink)
Stammuser
 
Registriert seit: 04.04.2009
Ort: Lübeck
Beiträge: 264
Standard

Roland: Advanced WindowsCare
Ja, habe dann einmal Klassisch eingestellt und dann wieder XP und es war alles wie gewohnt.
THFR ist offline   Mit Zitat antworten
Alt 28.07.2009, 11:36   #12 (Direktlink)
RGH
Forenmaskottchen
 
Benutzerbild von RGH
 
Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
Standard

Zitat:
Zitat von Peter_T Beitrag anzeigen
Gibt es eine Möglichkeit aus einer Speicherbitmap (MCls) die Grafik direkt in eine externe Datei zu speichern?
Ja: SaveBmp zwischen "StartPaint -1" und "EndPaint" aufrufen.

Gruß
Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c
AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c


http://www.xprofan.de
RGH ist offline   Mit Zitat antworten
Alt 30.07.2009, 05:50   #13 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 28.06.2009
Beiträge: 14
Standard

Zitat:
Zitat von RGH Beitrag anzeigen
Ja: SaveBmp zwischen "StartPaint -1" und "EndPaint" aufrufen.
Danke, das funktioniert (komplette Grafik oder Auschnitt)!
__________________
Windows 7 und XProfan 11.2a
Peter_T ist offline   Mit Zitat antworten
Alt 30.07.2009, 06:34   #14 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Bangkok
 
Registriert seit: 09.02.2009
Ort: Bangkok
Beiträge: 686
Standard

Hast du auch mal versucht das Icon direkt auf die Speicherbitmap zu zeichnen mit
Code:
DrawIcon S, N, X, Y

S   - String: Name der Icon-Datei (mit Pfad)

N   - Integer: Nummer des Icons in der Icon-Datei

X,Y - Integer: Koordinaten


DrawIcon N, S, X, Y

N   - LongInt : Handle der externen Datei

S   - String : Icon-Name

X,Y - Wert - Koordinaten
oder das Icon-Handle mit

Code:
Create("hIcon", S[, N])
ermittelt

ich denke das wäre wichtig zu wissen, da ich scheinbar der einzige bin, wo es funktioniert,
müsste man in so einem Fall aus Sicherheitsgründen ja grundsätzlich den Weg des Zwischenspeichern gehen.
Ansonsten läuft es vielleicht nur auf dem eigenen Computer.
__________________
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai.
http://dieterzornow.gmxhome.de
Bangkok ist offline   Mit Zitat antworten
Alt 30.07.2009, 19:56   #15 (Direktlink)
Stammuser
 
Benutzerbild von Andreas Miethe
 
Registriert seit: 08.02.2009
Ort: Bielefeld
Alter: 53
Beiträge: 428
Standard

Zitat:
Zitat von Peter_T Beitrag anzeigen
Bei mir funktioniert es leider nicht! Welche Systemeinstellungen soll ich vornehmen?

Es sieht bei mir so aus:

Auf 16-Bit Farbtiefe umschalten !
Oder das Icon anders laden.

Code:
$H Windows.ph
Cls
Def &LR_VGACOLOR $80

Def API_LoadImage(6) ! "USER32", "LoadImageA" 
Var Dll& = @UseDll("Shell32.dll")
Var Nr$ = "#14"

Var hIcon& = API_LoadImage(Dll&, @Addr(Nr$), 1, 48, 48,&LR_VGACOLOR)

MCls 180, 70, @RGB(0, 191, 191)
StartPaint -1
    DrawIcon hIcon&, 10, 10
    UsePen 1, 1, @RGB(255, 0, 0)
    UseBrush 0, @RGB(255, 0, 0)
    Rectangle 2, 2 - 178, 68
    UseFont "Arial", 18, 8, 1, 0 ,0
    TextColor @RGB(255, 255, 255), -1
    DrawText 70, 25, "Bitmap-Test"
EndPaint

Var hPic& = @Create("hPic", 0, "&MEMBMP")

DrawPic hPic&, 20, 20; 0 'zeigt erstellte Grafik
'Fehlerhafte Bitmap (?):
Var hBitm& = @Create("Bitmap", %hWnd, hPic&, 20, 120)
WaitInput
DeleteObject hIcon&, hPic&
FreeDll Dll&
End
__________________
Gruss
Andreas

______________________
http://www.ampsoft.eu

Profan 3.3 - XProfanX2
Windows 95,98,ME,2000,XP
Vista - Windows 7 32 / 64 Bit

ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher

Geändert von Andreas Miethe (30.07.2009 um 20:02 Uhr)
Andreas Miethe ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Antwort

  Paules-PC-Forum.de > Programmierung > XProfan

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Verschwundene Symbole auf dem Desktop Kung-Fu Windows XP 4 25.01.2006 15:54
verschwundene GB JimPanse Windows 95/98/ME/2000/NT 2 11.07.2005 17:26



Alle Zeitangaben in WEZ +2. Es ist jetzt 12:00 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2