📄 tbareditctrldbl.h
字号:
//-----------------------------------------------------------------------------
// (c) 2002 by Basler Vision Technologies
// Section: Vision Components
// Project: BCAM
// $Header: TBarEditCtrlDbl.h, 2, 02.10.2002 14:31:30, Nebelung, H.$
//-----------------------------------------------------------------------------
/**
\file TBarEditCtrlDbl.h
\brief interface for the CTBarEditCtrlDbl class.
*/
#if !defined(AFX_TBAREDITCTRLDBL_H__7158A077_F90C_11D4_8EF4_00105AC44283__INCLUDED_)
#define AFX_TBAREDITCTRLDBL_H__7158A077_F90C_11D4_8EF4_00105AC44283__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "TBarEditCtrlBase.h"
//////////////////////////////////////////////////////////////////////
/// Control using doubles
class CTBarEditCtrlDbl : public CTBarEditCtrlBase
{
public:
typedef int (*FMTVAL) (char *szBuffer, int nValue, int nWidth, int nPrecision);
private:
FMTVAL m_pFmtFnc;
double m_dLineSize;
double m_dPageSize;
public:
CTBarEditCtrlDbl(bool bPostMsgEnabled = true);
virtual ~CTBarEditCtrlDbl();
// overridden CTrackBarCtrl methods
bool SetRangeMin(double dRangeMin, bool bRedraw = true);
bool SetRangeMax(double dRangeMax, bool bRedraw = true);
bool SetRange(double dRangeMin, double dRangeMax, bool bRedraw = true);
double GetRangeMin() const;
double GetRangeMax() const;
void GetRange(double& dMin, double& dMax) const;
bool SetValue(double dValue, bool bTrackThumb = true);
bool DDXValue(UINT nID, double &dValue, BOOL bSave, BOOL bValidate = false);
double GetValue();
double SetLineSize(double dLogSize);
double GetLineSize(void);
double SetPageSize(double dLogSize);
double GetPageSize(void);
bool SetFormatFnc(FMTVAL pFmtFnc);
// overridden CTBarEditCtrlBase methods
bool GoCenterValue();
void SetPrecision(int nPrecision, int nWidth = 0);
private:
typedef enum { RND_UP, RND_DOWN, RND_AUTO,
} RND_TYPE;
double RoundValue(double dValue, RND_TYPE rndType);
double RoundUp(double dValue) { return RoundValue(dValue, RND_UP); };
double RoundDown(double dValue) { return RoundValue(dValue, RND_DOWN); };
double Round(double dValue) { return RoundValue(dValue, RND_AUTO); };
bool InternalSetValue(double dValue, bool bTrackThumb = true);
// overridden CTBarEditCtrlBase methods
bool LimitValue();
void UpdateValue();
bool UpdateEditText();
void UndoInput();
LRESULT HScroll(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
// overridden CTBarCtrlBase methods
bool UpdateRange(bool bRedraw /*= true*/);
void UpdateRangeText();
bool NotifyRangeChanged(bool bRedraw = true);
int FmtValue(char *szBuf, int nValue) { return 0; };
int FmtValue(char *szBuf, double dValue);
};
#endif // !defined(AFX_TBAREDITCTRLDBL_H__7158A077_F90C_11D4_8EF4_00105AC44283__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -