189 8069 5689

vb.net测量距离 vb测试

VB.Net如何测量含有中文的字符串长度

遍历每一个字符,看是全角还是半角的。半角的字符总数 +1,全角的字符总数 +2。

成都创新互联-专业网站定制、快速模板网站建设、高性价比咸丰网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式咸丰网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖咸丰地区。费用合理售后完善,10多年实体公司更值得信赖。

参考:

Public Function GetByteLength(ByVal value As String) As Long

Dim i As Long = 0

For Each c As Char In value

If (c.ToString().Length = System.Text.Encoding.Default.GetByteCount(value.ToString())) Then

i = i + 1

End If

i = i + 1

Next

Return i

End Function

vb.net inputbox与msgbox的使用

虽然下面代码也用了两个inputbox函数,但是比你的应该也要简单点,仅供参考

Const a = 1.5

Dim v0 As String

Dim vt As String

Dim t As Long

Dim s As Double

Private Sub Form_Load()

v0 = InputBox("请输入初速度(m/s)", "数据输入框")

Text1.Text = v0

t = InputBox("请输入时间(s)", "数据输入框")

Text2.Text = t

vt = v0 + a * t

s = v0 * t + (1 / 2) * a * t ^ 2

End Sub

Private Sub Command1_Click()

MsgBox "距离是" s

End Sub

用VB.Net 编程时如何获得打印机的物理边距

网络上找到这个比较全面,你试一下,我记得以前也是这么设置的。

int GetDeviceCaps( HDC hdc, int nIndex);

其中,hdc用来指定设备环境句柄,nIndex用来指定要获取的参量索引,对于打印机而言,它常常需要下列的预定义值:

LOGPIXELSX 打印机水平分辨率

LOGPIXELSY 打印机垂直分辨率

PHYSICALWIDTH 打印纸的实际宽度

PHYSICALHEIGHT 打印纸的实际高度

PHYSICALOFFSETX 实际可打印区域的物理左边距

PHYSICALOFFSETY 实际可打印区域的物理上边距

下面的函数代码就是用来设置页边距,并且还计算页面的物理边距:

void CEx_Prn1View::SetPageMargin(CDC *pDC, CPrintInfo *pInfo, int l, int t, int r, int b)

// l, t, r, b分别表示左上右下边距, 单位为0.1mm

{

int nOldMode = pDC- GetMapMode();

pDC- SetMapMode(MM_LOMETRIC);

// 计算一个设备单位等于多少0.1mm

double scaleX = 254.0 / (double)GetDeviceCaps(

pDC- m_hAttribDC, LOGPIXELSX);

double scaleY = 254.0 / (double)GetDeviceCaps(

pDC- m_hAttribDC, LOGPIXELSY);

int x = GetDeviceCaps(pDC- m_hAttribDC,

PHYSICALOFFSETX);

int y = GetDeviceCaps(pDC- m_hAttribDC,

PHYSICALOFFSETY);

int w = GetDeviceCaps(pDC- m_hAttribDC,

PHYSICALWIDTH);

int h = GetDeviceCaps(pDC- m_hAttribDC,

PHYSICALHEIGHT);

int nPageWidth = (int)((double)w*scaleX + 0.5);

// 纸宽,单位0.1mm

int nPageHeight = (int)((double)h*scaleY + 0.5);

// 纸高,单位0.1mm

m_nPhyLeft = (int)((double)x*scaleX + 0.5);

// 物理左边距,单位0.1mm

m_nPhyTop = (int)((double)y*scaleY + 0.5);

// 物理上边距,单位0.1mm

pDC- DPtoLP(pInfo- m_rectDraw);

CRect rcTemp = pInfo- m_rectDraw;

rcTemp.NormalizeRect();

m_nPhyRight = nPageWidth - rcTemp.Width() -

m_nPhyLeft; // 物理右边距,单位0.1mm

m_nPhyBottom = nPageHeight - rcTemp.Height() -

m_nPhyTop; // 物理下边距,单位0.1mm

// 若边距小于物理边距,则调整它们

if (l m_nPhyLeft) l = m_nPhyLeft;

if (t m_nPhyTop) t = m_nPhyTop;

if (r m_nPhyRight) r = m_nPhyRight;

if (b m_nPhyBottom) b = m_nPhyBottom;

// 计算并调整pInfo- m_rectDraw的大小

pInfo- m_rectDraw.left = l - m_nPhyLeft;

pInfo- m_rectDraw.top = - t + m_nPhyTop;

pInfo- m_rectDraw.right -= r - m_nPhyRight;

pInfo- m_rectDraw.bottom += b - m_nPhyBottom;

pDC- LPtoDP(pInfo- m_rectDraw);

pDC- SetMapMode(nOldMode);

// 恢复原来的映射模式

}


名称栏目:vb.net测量距离 vb测试
转载注明:http://jkwzsj.com/article/dddeccc.html

其他资讯