Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

bepo

Frischling

  • »bepo« ist der Autor dieses Themas

Beiträge: 33

Wohnort: Bayern

Beruf: Schüler

  • Private Nachricht senden

1

08.08.2004, 13:03

GDI-Problem

ich möchte ein dame-spielfeld in ein bild in einem dialog erstellen.
allerdings wird es nicht erstellt, da angeblich die resource nicht vorhanden ist
wo ist der fehler??

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/*  resource.h
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by Dame.rc
//
#define IDD_DAME                        101
#define IDC_ERROR                       1002
#define IDC_EXIT                        1003
#define IDC_FIELD                       -1

// Next default values for new objects
// 
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE        102
#define _APS_NEXT_COMMAND_VALUE         40001
#define _APS_NEXT_CONTROL_VALUE         1004
#define _APS_NEXT_SYMED_VALUE           101
#endif
#endif
*/

void Render(HWND hDlg)
{
    RECT r;
    HDC hDC;
    int i = 0;

    hDC = GetDC(GetDlgItem(hDlg,IDC_FIELD));
    GetClientRect(GetDlgItem(hDlg,IDC_FIELD),&r);
    FillRect(hDC,&r,(HBRUSH)GetStockObject(WHITE_BRUSH));

    for(int x=0;x<400;x+=50)
    {
        for(int y=0;y<400;y+=50)
        {
            if(++i%2==0)
            {
                RECT s = { r.left+x,r.right+y,r.left+x+50,r.right+y+50 };
                FillRect(hDC,&s,(HBRUSH)GetStockObject(BLACK_BRUSH));
                if(x==350) i--;
            }
        }
    }

    ReleaseDC(GetDlgItem(hDlg,IDC_FIELD),hDC);
};

Till

Alter Hase

Beiträge: 378

Wohnort: Lincoln College, Oxford

Beruf: Student

  • Private Nachricht senden

2

08.08.2004, 23:14

Hast du den Code zusammenkopiert oder steht die Render-Funktion im Resouce-Header?
DOMINVS ILLVMINATIO MEA
---
Es lebe unmanaged Code!
---
>> Meine Uni <<

3

09.08.2004, 01:15

Wie auch immer. Alle Resourcen wurden Auskommentiert.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Klaus

Treue Seele

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

4

09.08.2004, 01:56

Zitat von »"DragonMaster"«

Wie auch immer. Alle Resourcen wurden Auskommentiert.


Aber dennoch bleibt es ja eine Header-Datei, die nicht ohne Weiteres kompiliert wird, oder?
Mozilla Firefox
The Browser - reloaded

5

09.08.2004, 03:18

Eine Header wird nie compiliert. Sie wird mittels des Prä-Prozessors in das Modul hineinkopiert.


Es spielt aber keine Rolle. Wenn die Resourcen, nicht die resource.h, auskommentiert wurden ist es klar das der Compiler meckert. Aber das muss man doch sehen? Kommentare werden schließlich farblich abgehoben.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

bepo

Frischling

  • »bepo« ist der Autor dieses Themas

Beiträge: 33

Wohnort: Bayern

Beruf: Schüler

  • Private Nachricht senden

6

09.08.2004, 12:08

ich hab den inhalt der resourcedatei als Komentar über Render() in der main.cpp geschrieben

PS: hab vergessen das ich mit resource oben IDC_FIELD meine, da kommt bei GetDlgItem(hDlg,IDC_FIELD) mit GetLastError(), dass IDC_FIELD nicht existiert

Till

Alter Hase

Beiträge: 378

Wohnort: Lincoln College, Oxford

Beruf: Student

  • Private Nachricht senden

7

09.08.2004, 16:41

Und die anderen Resourcen funktioneren etwa??
Und ist das alles OHNE Assistent gemacht? Denn falls MIT, dann dürfte das ja eigentlich nicht passieren...

Steht in Dame.rc auch die gleiche Resourcen-ID für das Feld (IDC_FIELD) drin wie in Resource.h?
DOMINVS ILLVMINATIO MEA
---
Es lebe unmanaged Code!
---
>> Meine Uni <<

Till

Alter Hase

Beiträge: 378

Wohnort: Lincoln College, Oxford

Beruf: Student

  • Private Nachricht senden

8

09.08.2004, 16:43

@DragonMaster: Bist du etwa durch diesen Thread hier auf die Idee gekommen, eine Compiler-Wirkungsweise-Erklärung abzugeben? :-D
DOMINVS ILLVMINATIO MEA
---
Es lebe unmanaged Code!
---
>> Meine Uni <<

9

09.08.2004, 18:33

Setz den Wert von IDC_FIELD mal auf einen anderen Wert. Bin mir da jetzt nicht so sicher, aber es kann sein das er die -1 nicht mag.

Ist die resource.h denn auc überall eingefügt? Nicht das du vergassen hast diese einzuügen :)

Ist eine gute Frage: Funktionieren die anderen?

Zitat

@DragonMaster: Bist du etwa durch diesen Thread hier auf die Idee gekommen, eine Compiler-Wirkungsweise-Erklärung abzugeben?
Sagen wir, dieser Thread war das i-Tüpfelchen :D
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

bepo

Frischling

  • »bepo« ist der Autor dieses Themas

Beiträge: 33

Wohnort: Bayern

Beruf: Schüler

  • Private Nachricht senden

10

10.08.2004, 11:09

irgendwie hab ichn bisschen an dem code der *.rc rumgespielt, dann hab ich den _IDC_FIELD wert auf 1000 gesetzt und nu funzt es, abe rich kann es an einem backuo nicht wiederholen!

Werbeanzeige