Alle Beiträge von Narf!
-
Zeichnen auf CStatic
Ich habe eine andere Lösung gefunden: Ich schreibe in die OnPaint() des Dialoges ein SetTimer([x], 100, 0) und bei OnTimer() rufe ich die OnChange-Funktionen nacheinander auf. Geht auch.
-
Zeichnen auf CStatic
Ich kann von dem Static-Feld nur Dialog-Klassen als Basis angeben. Ist das OK? Was muss in OnPaint() genau rein?
-
Zeichnen auf CStatic
Tja, doch nicht so einfach. Der Text verschwindet, wenn ich ein anderes Fenster anzeigen lasse und wird erst wieder gezeichnet, wenn ich in dem Eingabefeld wieder eine Eingabe mache. Wie kann ich den "alten" Inhalt behalten? CDC *dc_label=m_cSt_Label.GetDC(); CFont font; LOGFONTW lFont; CBrush pBrush(RGB(255, 255, 255)); ZeroMemory(&lFont, sizeof(LOGFONT)); lFont.lfHeight=hoehe; lFont.lfWeight=fett; lFont.lfItalic=italic; wcscpy(lFont.lfFaceName, L"Arial"); VERIFY(font.CreateFontIndirect(&lFont)); CFont* def_font=dc_label->SelectObject(&font); dc_label->FillRect(&rect, &pBrush); //löscht den Inhalt dc_label->DrawText(Text, rect, TextFormat); //TextFormat wie DT_VCENTER font.DeleteObject(); ReleaseDC(dc_label);
-
Zeichnen auf CStatic
Tja, ganz einfach: NICHT CDC dc; SONDERN CDC *dc; Und dann dc=[steuerelement].GetDC(); Und los gehts.
-
Zeichnen auf CStatic
Hallo an alle, ich möchte einen kleinen Etiketten-Editor erstellen. Habe dazu einen Dialog mit einem CStatic-Feld in welches ich auch schon das grundlegende Bitmap geladen habe. Jetzt möchte ich in Eingabefeldern die Daten erfassen und gleich auf dem CStatic an die richtige Stelle zeichnen. Wie komme ich an den DC ran?
-
NVidia GeForce 9500 GT
Die Grafikkarte ist defekt. Es wurde eine neue gleichen Typs eingebaut und die läuft jetzt.
-
NVidia GeForce 9500 GT
@Sheggy: Nein, nur DVI. @jeronimonino: Habe ich schon probiert. Wie weit sollte man zurückgehen? @yakup187: Benq E2220HD, sollte einer der Neueren sein. Im VGA-Modus (640x480) läuft es. Wenn ich die Auflösung auf 800x600 stelle geht schon wieder gar nichts.
-
NVidia GeForce 9500 GT
Hallo an alle, mein Problem: Neuer PC mit NVidia GeForce 9500 GT (Gainward) Grafikkarte. Ich installiere XP SP3 -> alles prima. Installiere die Grafik-Treiber -> alles Mist. Ich habe auf meinem Monitor kein Bild. Anschluss an VGA oder DVI bringt nichts. Monitorwechsel auch nicht. Wenn ich XP im VGA-Modus starte habe ich wieder ein Bild. Starte ich neu, wird nur ganz kurz der Anmeldebildschirm angezeigt, dann nur wieder blaues Bild (KEIN BlueScreen). Monitor erkennt Signal auf dem DVI-Anschluss. Wird evtl. das Bild auf dem "zweiten" Monitor angezeigt? Kriege ich das auf den ersten Monitor mit Tastenkombination?
-
CreateProcess aus Thread
Tja, nun ist es soweit. Ich brauche eine Antwort. Wie hoch ist der Timeout bei ReadFile bzw. kann man den einstellen?
-
Fenster einem Prozess zuordnen
Danke sehr.
-
Fenster einem Prozess zuordnen
Hallo an alle, ich starte mit CreateProcess() zweimal die gleiche Konsolenanwendung. Während diese laufen, kann es vorkommen, dass eine MessageBox aufgeht. Wie kann ich ermitteln, welche der beiden Konsolen die MessageBox geöffnet hat? VS .NET 2003, MFC, Dialog
-
FTP Datei umebenennen
Hallo an alle, ich möchte nach einem Download die Datei auf dem Server umbenennen. Ich öffne mit CFTPConnection die Verbindung, suche mit CFtpFileFind die Datei und lade diese mit CInternetFile herunter. Wie kann ich diese Datei umbenennen? Visual C++, VisualStudio .NET 2003, MFC, Kosole
-
ISO-Images selbst erstellen
Gibt es auch Freeware-Tools, die "nur" Images erstellen können?
-
ISO-Images selbst erstellen
Das ist dann doch etwas viel. Gibt es Kommandozeilen-Tools (außer NeroCmd), die das können?
-
ISO-Images selbst erstellen
Hallo an Alle! Wie kann ich mit MFC eine ISO-Imagedatei (.iso) selbst erstellen? Helfen mir da IStorage und IStream weiter?
-
MP3 - Bitrate auslesen
Hallo an Alle. Ich möchte aus einer MP3-Datei die Bitrate (kbps) auslesen. Das soll wohl im Header stehen. Wie komme ich an den ran? Oder geht das einfach mit CStdioFile::Open() und CStdioFile::Read()? Visual C++, MFC/ATL, Konsole.
-
CDs brennen
Hallo an Alle! Was gehört eigentlich dazu, um einen Brenner zum Brennen zu bringen ohne IMAPI oder Aufruf externener Programme?
-
CImage::Save()
Ja, ich meine die Auflösung. Die Maße bleiben 1748x1748. Für "echten" Code siehe Beitrag 1 oder 3.
-
CImage::Save()
Das war es doch noch nicht so ganz. Jetzt lade ich ein Bild mit 400x400 DPI und gespeichert wird aber 96x96 DPI.
-
ISAXXMLReader - Beispiel läuft bedingt
Und damit sind wir beim nächsten Problem: ISAXXMLReader:: parseURL(unsigned short *URL); Wie bekomme ich den da einen Pfad (CString) rein?
-
ISAXXMLReader - Beispiel läuft bedingt
Aha, es läuft. Was genau habe ich da jetzt gemacht?
-
ISAXXMLReader - Beispiel läuft bedingt
Ich war's nich'. Ich habe praktisch nur die Dateien umbenannt. Was vorher a1ContentHandler.cpp/.h war ist jetzt XMLContentHandler.cpp/.h und a1->XML. Sonst ist alles das selbe. Hier die Ableitungen: ISAXContentHandler (abstrakt) <- SAXContentHandlerImpl (hat alles übernommen) <- XMLContentHandler (übernimmt nur die benötigten Funktionen).
-
ISAXXMLReader - Beispiel läuft bedingt
Hallo, ich bin dabei eine große XML-Datei zu parsen und habe mir von MS das Beispiel für ISAXXMLReader angesehen. Dazu habe ich mir den SAXAppWizzard heruntergeladen und das Beispiel ausprobiert. Beim Kompilieren trat der Fehler auf, das die Variable "*Test*" nicht vorhanden ist. Das muss man in "A1" ändern. Das CMD-Tool läuft dann anständig durch. Jetzt möchte ich das ganze in mein MFC-Dialog-Projekt einbinden. Und jetzt der Fehler: XMLContentHandler * XMLContentHandler::CreateInstance() { XMLContentHandler * pXMLContentHandler = NULL; pXMLContentHandler = new XMLContentHandler(); //ERROR assert(pXMLContentHandler!=NULL); return pXMLContentHandler; } ERROR: XMLContentHandler.cpp(27): error C2259: 'XMLContentHandler': Instanz von abstrakter Klasse kann nicht erstellt werden Wie kann das sein, wenn es bei CMD funktioniert. Die Aufrufe sind genau die selben und XMLContentHandler ist keine abstrakte Klasse, also kein void Name()=0; oder so.
-
CImage::Save()
Ach Mensch! :old Man sollte natürlich darauf achten, dass man auch das richtige Basis-Bild lädt.:upps Also die Maße bleiben gleich, wie schon erwähnt. Ich denke mal, man kann das Thema löschen, oder?
-
CImage::Save()
Dann mal hier etwas vom Rest, Text zeichnen: CDC *pDC=0; int main() { CImage img; img.Load("Bild.jpg") pDC=CDC::FromHandle(img.GetDC()); CRect rect; //hier wird der Output-Bereich festgelegt rect.top=150; rect.left=550; rect.bottom=rect.top+60; rect.right=rect.left+800; DrawText("Text", 48, rect); //hier muss ich die Schriftgröße ziemlich groß wählen, da sie sonst auf dem neuen Bild kaum zu erkennen ist. img.Save("NeuBild.jpg"); img.ReleaseDC(); }//end int main(); void DrawText(CString Text, CRect rect, int hoehe); { CFont font; LOGFONT lFont; ZeroMemory(&lFont, sizeof(LOGFONT)); lFont.lfHeight=hoehe; lFont.lfWeight=FW_EXTRABOLD; strcpy(lFont.lfFaceName, "Verdana"); VERIFY(font.CreateFontIndirect(&lFont)); CFont* def_font=pDC->SelectObject(&font); pDC->DrawText(Text, Text.GetLength(), rect, DT_VCENTER|DT_END_ELLIPSIS|DT_LEFT|DT_NOFULLWIDTHCHARBREAK|DT_WORDBREAK); font.DeleteObject(); }//end void DrawText()