#pragma once
#include <windows.h>
/* Realisiert ein (einzeiliges) Editfenster mit folgenden Extras:
+ Spin-Control
+ Static-Titel vor/über dem Textfeld aus initialem Text
+ Static-Einheit hinter/unter dem Textfeld aus initialem Text
+ Schriftgröße passend zur Höhe
Das kann ohne viel Wenn-und-Aber in einer Ressource liegen,
allerdings nicht mit EDIT sondern CONTROL
*/
struct EditX{
static WNDPROC oldeditproc;
static int oldwndextra;
static BOOL init();
static LRESULT CALLBACK wndproc(HWND,UINT,WPARAM,LPARAM);
static EditX*getObj(HWND w) {return (EditX*)GetWindowLongPtr(w,oldwndextra);}
static EditX*getObj(HWND w,UINT id) {return getObj(GetDlgItem(w,id));}
HWND wnd;
char nk; // Nachkommastellen
EditX(HWND w):wnd(w),nk(0) {}
LRESULT wndproc(UINT,WPARAM,LPARAM);
HFONT makefont(HFONT,BOOL) const;
bool setDouble(const double&);
bool getDouble(double&) const;
enum {GAP=2};
};
Detected encoding: ANSI (CP1252) | 4
|
|