当前位置:首页 » 编程软件 » bmr编程

bmr编程

发布时间: 2022-12-18 16:05:04

⑴ 急求助!扩展名是BML的文件,是什么文件怎样打开

你用,cad ky dai kai
我给你解释一下
如下:
对于一个成熟的应用程序系统来说,方便详尽的帮助系统是必不可少的。在Windows95/98环境下的图形化帮助系统中可以包含图形、经过格式化编排的文本、声音和动画等,这为应用程序增色不少。
在Windows95/98环境下,利用Visual Foxpro提供的Microsoft Help Workshop工具,可以创建功能较为完善的应用程序帮助系统。
创建Windows95/98下的帮助系统时首先应该明确以下几个概念:
(1)、帮助主题:帮助主题是指帮助窗口中的信息,它通常是以标题开始且包含某一特定任务、命令或对话框的信息。Help由一个个“主题”串接而成,每个主题可由标题、主题标识字符串、浏览顺序号来识别。
(2)、标题:标题可由带空格的多个单词组成,具有描述性的文字,通常以“主题”中的首行作为标题。不同的主题应有不同的标题,如果出现多个主题共同拥有一个标题,系统将会发出警告。
(3)、主题标识字符串:主题标识字符串是唯一用来确定主题的字符串,它只能由字母、数字或下划线组成。
(4)、关键词:在生成的Help文件中可以根据关键词来搜索并转到相应的主题上。
(5)、浏览顺序号:浏览顺序号用在制作上下文敏感的Help文件中,它与主题标识字符串一样不能重复。
创建帮助系统的步骤如下:
(1)、编辑帮助主题文件(扩展名为.RTF),该文件含有具体帮助信息以及所需的各种编码,可由一个或多个文件组成;
(2)、编辑帮助项目文件(扩展名为.HPJ),该文件含有对主题文件进行编译时所需的信息;
(3)、编辑帮助目录文件(扩展名为.CNT),该文件含有帮助的目录框架信息;
(4)、编辑生成帮助文件(扩展名为.HLP),该文件含有系统所需的各种帮助信息;
(5)、在应用程序(如VB、VFP或其它高级程序设计语言)中编写代码调用帮助系统(WinHelp),提供帮助信息。
一、 编辑帮助主题文件
1、建立RTF格式文件
通常用Word来创建RTF文件,文件中可以包含文本、位图或图元文件,甚至还可以包括声音、动画等。其中应注意两点:(1)一个主题结束后应插入一个分页符,作为主题间的分界;(2)整个主题文件编辑完成后保存时,在“文件类型”列表框中应选择RTF(Rich Text Format),这样文件将.RTF扩展名存盘并供帮助编译器使用。
2、设置脚注
将光标移至主题的最左边,选择菜单中的“插入|脚注和尾注”,选择“脚注”,在“定制脚注标记”中输入脚注符号,然后按回车键,这时激活脚注窗口,然后输入脚注内容。
不同的脚注符号代表的含义不同,常见的脚注含义及其符号如表1所示:
此外,还有其它脚注。在所有脚注中,主题标识字符串(#)是必需的,其它脚注可据实际情况加以选用。
3、设置热点,建立主题之间的连接
帮助主题中另一重要的编码是为文本指定“热点”。用鼠标单击“热点”即可跳转到相应主题或弹出说明窗口,为“热点”处的文本给出帮助信息。前者称为“跳转(Jump)热点”,表现为绿色单下划线形式;后者称为“弹出(Popup)热点”,表现为绿色单点下划线形式。
(1)、指定跳转热点。跳转热点在帮助主题文件中是带双下划线的文本。首先选择字符的双下划线格式。然后键入跳转热点文本,清除双下划线格式,选择隐藏文本格式,键入跳转目的地处的主题标识字符串。清除隐藏文本格式后,再键入其它正文。注意:在隐藏文本后换行时,一定要先清除隐藏文本格式,然后再按回车键。
(2)、指定弹出热点。弹出热点在帮助主题文件中表现为单下划线的文本。首先选择字符的单下划线格式,键如弹出热点文本,清除单下划线格式,选择隐藏文本格式,键入在弹出的附加说明的主题的主题标识字符串。清除隐藏文本格式后再键入其它正文。同样,在隐藏文本后换行时,一定要先清除隐藏文本格式,然后再按回车键。
以上两种热点文本均可带有格式,如字体、字号以及不同的风格(黑体或斜体)。在隐藏文本和带下划线(单或双)文本间不能有空格。隐藏文本显示出来时是带点划线的正文(使Word工具栏上的“隐藏|显示”按钮呈高亮显示时,则隐藏文本可被显示出来)。
除文本可具有热点特征外,图形也可具有以上两种热点特征。图形中的热点要使用专用的工具软件——热点编辑器(Hot Spot Editor)才能指定。
4、建立不可滚动的标题区域
在Windows的帮助窗口中,经常可以见到窗口上部的标题区域(有时还会有图形)是不可滚动的。这样,当显示一个较长的主题时,用户就总能看到该主题的题目。用Word创建主题文件时,通过使用下列方法则很容易就能够实现上述功能。
在编辑每一个主题时,第一行通常是主题的标题,然后换行,再输入主题中的正文。这时,把光标放在第一行,从“格式”菜单中选择“段落”命令,Word弹出段落格式设置对话框,在此对话框中选取“正文排列”选择卡,在“分页”成组框中用鼠标选中“与下段同页”复选框,然后关闭段落格式对话框。这样,第一行经过编译后就会成为不可滚动的区域。当然不可滚动的区域可以有多行,这时只需在选择多行后再设置“与下段同页”格式即可。
5、使用图形和图像
帮助主题文件中使用的图形和图像是位图(BMP)格式。可用下列两种方法来引用位图图形:
(1)、直接在主题文件中放置位图。由于Word支持图文混排,故可用OLE方法从其它应用程序中引用图形或图像;或者在Word的“插入”菜单中选择“图片”命令,直接插入具有BMP格式的图形文件。
(2)、使用位图索引法。即如果在位图出现的位置加入下面的语句之一,则在主题文件中加入一个下列位图索引:
● {bmc图形文件名}:把一个位图当作一个字符处理,行高由位图决定。
● {bml图形文件名}:位图放在一行的左边,正文可在右边卷绕。
● {bmr图形文件名}:位图放在一行的右边,正文可在左边卷绕。
其中,图形文件名应加BMP扩展名。一个位图可被多处索引。应该注意的是,不要给出文件的路径名。如果需要告诉编译器在编译时在非工作目录中寻找位图文件,则可在帮助项目文件的[BITMAP]字段中给出位图的全路径名。
二、 建立帮助项目文件
Help帮助项目文件(扩展名为.HPJ)中包含Microsoft Help编译器将主题文件和其它元素合成帮助文件所需的全部信息。项目文件是一个纯文本文件,可用任何文本编辑器来建立,也可用其它工具建立。每一个项目文件由一节或多节组成。每一节有一个节名,用方括号([])括起来,定义该节中的语句和选项的目的及格式。例如:
(1)、[OPTIONS]:指定控制创建过程的选项。此节是可选的,若选用则必须用在第一节。
(2)、[FILES]:指定帮助的主题文件,扩展名为RTF。这一节是必需的,可以有一个或多个主题文件。
(3)、[MAP]:把上下文串与上下文号相连接,成为上下文关联的帮助。
(4)、[CONFIGS]:指定在创建帮助文件中使用的宏。这些宏由帮助系统调用或用于创建非标准的帮助菜单和按钮。例如,用于前后翻页的“》”和“《”按钮,就是由此字段指定的宏创建的。
(5)、[BITMAPS]:指定主题文件中引用的位图的文件名,包括其路径。
(6)、[WINDOWS]:定义帮助系统使用的主窗口及次窗口的标题、位置、大小和使用的颜色。在帮助主题文件中,若设计为跳转主题使用次级窗口,则应包括此段。
用VFP提供的Microsoft Help Workshop来建立项目文件十分直观方便,选择菜单File|New,再选择Help Project,即出现创建帮助项目文件的画面。
三、 建立帮助目录文件
帮助目录文件提供了帮助系统中主题的层次结构视图,利用Microsoft Help Workshop的可视化的编辑功能可以方便地建立帮助目录文件。选择菜单File|New,再选择Help Content,则出现建立目录文件的画面。
四、 编译生成帮助文件
帮助编译器有几个版本,功能也不尽相同。这里利用Microfoft Help Workshop下的HCW进行编译,在Microfoft Help Workshop下选择菜单File|Compile即可进行编译。编译过程中若出现错误时,则系统会给出出错信息,以便用户进行修改,直到正确无误为止。编译时系统会提示帮助系统的有关信息,若无致命的错误则编译生成一个扩展名为HLP的帮助文件,这也是Windows的帮助系统可以调用的二进制文件。选择File|Run Winhelp即可欣赏生成的帮助系统。
五、 在应用程序中编写代码以便调用帮助系统(WinHelp),提供帮助信息
在应用程序中,用户访问帮助系统的途径有三:
(1)、帮助菜单:显示在应用程序主菜单栏上的一个菜单;
(2)、上下文相关帮助:当选定某个对象、控件或菜单选项并按下F1键时显示的帮助;
(3)、“这是什么”帮助:当用户寻求关于特定对象或控件的帮助时出现的简单弹出式提示信息。
下面以FVP为例,分别说明如何在应用程序中编写代码以便调用帮助系统。
1、帮助菜单
要为菜单标题或菜单命令指定帮助标题,则必须在与菜单标题或菜单相关联的过程中包含SET TOPIC TO命令,然后用Help加以激活。
2、上下文相关帮助
“上下文相关帮助”允许用户随时访问与他们在应用程序中所作、所见相关的帮助主题。例如,如果用户正在查看一个数据输入表单,则“上下文相关帮助”能够提供与那个数据输入表单相关的帮助主题。
一般地,按下F1键即可访问“上下文相关帮助”,还可以使用ON KEY LABEL指定任意键激活“上下文相关帮助”。
在“表单”上使用“上下文相关帮助”时,必须为应用程序指定一个帮助文件,然后将特定的帮助主题与应用程序中的不同对象关联起来。
添加“上下文相关帮助”步骤如下:
(1)、为应用程序指定一个帮助文件。
如果在代码中包含了SET HELP TO FILE命令(其中FILE为帮助文件的名字),则可以为应用程序选定能够访问的帮助文件。例如,如果帮助文件名为MYHELP.HLP,则可使用如下命令:
SET HELP TO MYHELP.HLP
这个命令一般包含在您的应用程序的主程序的设置代码中。
(2)为希望提供“上下文相关帮助”的对象指定一个帮助主题。
1)、在“设计”状态下打开想要指定“上下文相关帮助”功能的对象,例如一个表单、控件或工具栏;
2)、查看该对象的属性;
3)、把HelpContextID属性设置为代表帮助文件中特定主题的编码。
3、“这是什么?”帮助
“这是什么?”帮助类似于上下文相关帮助,因为它提供对当前具有焦点的特定对象或控件的帮助。但“这是什么?”帮助不是在激活帮助后在默认大小的“帮助”窗口中显示帮助主题,而是在一个弹出式小窗口显示帮助主题,并且当用户在屏幕任意位置单击时该窗口消失。
“这是什么?”帮助在提供简单提示型描述文字或特定控件定义时很有用,因为“这是什么?”帮助主题简洁、准确,窗口不会变得过大从而掩盖用户正在描述的特性。
要把“这是什么?”帮助与特定表单、表单控件或工具栏关联起来,则应将其WhatsThisHelpID属性设置为代表帮助中特定主题的编码。
使用如表2所示的属性可实现“这是什么?”帮助功能。
若要实现“这是什么?”帮助,则应做到:
(1)、在设计模式下打开要想启用“这是什么?”帮助的表单;
(2)、把表单的WhatsThisHelp属性设置为“真”(.T.);
(3)、要在表单标题中显示一个“这是什么?”帮助按钮,可将表单的WhatsThisButton属性设置为“真”(.T.);
(4)、要把一个“这是什么?”帮助主题与该表单关联起来,可将表单的WhatsThisHelpID属性设置为与帮助中主题相应的ID编码;
(5)、要把一个“这是什么?”帮助主题与表单上的特定控件关联在一起,则应在选择控件后将其WhatsThisHelpID属性设置为与帮助中主题相对应的ID编码。
4、使用WinHelp函数
通过编程来使用帮助的另一个方法是调用WinHelp函数。WinHelp函数仅用于Windows平台,它是Windows应用程序编程接口(API)的一部分。
使用WinHelp函数的步骤如下:
(1)、定义您的应用程序将要传递的命令参数。
有关这些参数的说明,请参阅稍后的wCmd参数。
(2)、用SET LIBRARY TO设置库并定义要使用的变量,这个工作一般在应用程序主文件的初始化代码中完成。
SET LIBRARY TO SYS(2004)+ “FOXTOOLS.FLL” ADDITIVE
Help=RegFn(“Help”,“LCIC”, “I”)
库一定要设置成FOXTOOLS.FLL。SYS(2004)返回安装FOXTOOLS.DLL的Visual FoxPro根目录。
如果希望传送K关键字来打开一个帮助主题,则可用RegFn()来定义一个变量(如上例的Help变量)。如果希望打开映射带一个编码的帮助主题,则用RegFn来定义一个类似于上例中的Help的变量,用一个编码代替dwData中的字符串。如果要传递编码,则必须在.HPJ文件的[MAP]节中把它们与唯一的用编码标记(#)脚注定义的上下文字符串映射起来。
(3)、使用CallFn()调用函数。
下列代码使用CallFn()来打开帮助主题,该代码中包含主题关键字。
#define HELP_KEY 0x0101
wCmd=HELP_KEY
cFileName=HOME()+“Myprogram\Myhelp.hlp"
dwData=“ADD Menu Items at Run Time"
CallFn(Help,MainNWND(),cFileName,wCmd,dwData)
有关FoxTools函数的更详细内容,请参阅VFP、TOOLS目录下的FOXTOOLS.HLP文件。
(4)、指定WinHelp参数
下列参数指定了WinHelp函数的参数选项。
1) hWnd参数
hWnd参数标识请求帮助的窗口。帮助使用这个标识符跟踪哪一个应用程序请求过帮助。在Visual FoxPro中使用包含在FOXTOOLS.FLL库中的MainHWND()函数来传递hWnd参数。
2)lpzFileName参数
lpzFileName参数是一个字段串,指定包含所需主题的帮助的有效路径及文件名称。它是以值传递方式来传递的。
3)wCmd参数
wCmd参数指定用户对特定主题定位的查找类型或指明应用程序不再需要帮助。它可以设置为表3中的任一值。
4)dwData参数
dwData参数代表应用程序需要查找的主题。它的内容和格式取决于应用程序调用WinHelp函数时所传递的wCmd值。
在大多数调用帮助时按值传递方式传递dwData参数,这是Visual FoxPro的默认设置。
根据环境设置,上一行中的dwData或者代表一个文本字符串,指示要查找的关键字,或者是一个数值,指示标识一个特定主题的上下文编码。
表4中列出了wCmd每个值对应的dwData格式。
因为WinHelp可指定一个上下文编码或关键字,所以它可以支持“上下文相关帮助”及对帮助中主题的查找。
说明:如果帮助系统包含两个以上的索引时,则在应用程序中必须指定其中的一个为默认索引。要想确保设置的是正确的索引,则在应用程序调用帮助系统时应该将wCmd设置为HELP_SETINDEX(其中dwData指定相应的上下文标识)。对帮助的每次调用都要后接HELP_CONTEXT的命令设置。千万不要把HELP_SETINDEX与HELP_INDEX一起使用。
(5)、保留F1键的功能
当用户在应用程序中按F1键时,Vlsual FoxPro会显示一个“上下文相关帮助”主题。为了做到这一点,可在帮助表中为需要“上下文相关帮助”的主题指定一个帮助的相关ID值,并把此值赋给表单或控件的HelpContextID属性。这样,当表单或控件获得焦点并且用户按下F1键时,Vlsual FoxPro就会适应该主题。
(6)、在表单中包含“帮助”按钮。
如果在表单中添加了“帮助”按钮,则用户可以更方便地访问帮助信息。如果用户是个新手,则更应该考虑在表单中添加一个“帮助”按钮。
若要设置上下文相关帮助并添加一个“帮助”按钮,则应做到:
1)在表单的Init事件中,将表单中所有对象的HelpContextID属性都设置为该帮助主题的ID值。例如,如果该值为7,则可用如下命令:
THIS.SetALL(“HelpContextID”,7)
2)在表单中添加一个命令按钮。
3)把命令按钮的Caption属性设置为“帮助”。
4)在命令按钮的Click事件中添加如下命令:
HELP ID THIS.HelpContextID
为了方便起见,可将“帮助”按钮保存为一个类,这样就可以方便地将它添加到任何表单中。
(7)、退出图形化帮助。
帮助系统是所有Windows应用程序共享的资源。因为它也是一个独立的应用程序,所以用户可以像其它应用程序一样去执行它。这样,您的应用程序对帮助系统就只有有限的控制能力了。
尽管您的应用程序不能直接关闭帮助系统窗口,但它可以通知帮助系统它不再需要帮助了。在关闭主窗口之前,您的应用程序应该将wCmd参数设置为 HELP_QUIT,以此来通知帮助说明您的应用程序不再需要它了。
如果应用程序在执行过程的某个位置要调用帮助系统,那么在终止应用程序前必须将wCmd参数设置为HELP_QUIT。
如果一个应用程序打开了一个以上的帮助系统,则它必须为每一个帮助文件调用WinHelp函数以退出其帮助系统。如果一个应用程序或动态链接库(DLL)已经打开了一个帮助系统但不希望帮助系统的相关实例保持活动,则该应用程序或DLL应该把wCmd参数设置为HELP_QUIT,这样就可以退出帮助系统的那个实例了。
说明:在终止之前,一个应用程序或DLL应该对任何一个打开的帮助系统调用帮助文件。每次用帮助名来调用帮助文件时都会打开相应的帮助系统。
只有在所有调用帮助的窗口相继把wCmd设置为HELP_QUIT后,帮助系统才退出。如果一个应用程序没有这样做,那么即使在所有请求帮助的应用程序都终止以后,帮助系统仍将继续运行。
以上介绍的是制作Windows95/98帮助系统的基本方法。事实上,目前已经出现了许多专门用于制作帮助系统的工具软件,它们的主要共同点是可视化、所见即所得、集成处理等,其操作界面类似于Word,一般在加入了自己的工具条、菜单项后即可实现可视化设计,轻松地创建跳转热点、弹出热点、图形热点等等,而且还可以将帮助文件打印成册。

java计算器编程!!急急急!

//一本参考书上的
importjava.awt.*;
importjava.awt.event.*;

{
doubledResult=0;
doubledNowInput=0;
doubledMemory;
intn=0;//记载小数位数
intnOperation=1;//记录运算符类型
intnBitsNum=0;//记录总共输入的位数
booleanalreadyHaveDot=false;//已经有小数点?
booleankeyAvailable=true;
booleanalreadyClickedEqueal=false;//是否按下过"="?
booleanisTempNowInput=false;//是否在计算出结果后直接按运算符将结果赋给了当前输入值?

Framef;
Panelp1,p2,p3,p4,p5,p6;
TextFieldtf1,tf2;
Buttonb1,b2,b3,b4,b5,b6,b7,b8,b9,b0;
ButtonbDiv,bSqrt,bMulti,bMinus,bPercent,bPlus,bReciprocal,bEqual,bDot,bNegative;
ButtonbBackspace,bCE,bC,bMR,bMS,bMC,bM;

publicvoiddisplay()
{
f=newFrame("计算器");
f.setSize(280,213);
f.setLocation(200,200);
f.setBackground(Color.LIGHT_GRAY);
f.setResizable(false);

f.setLayout(newBorderLayout(3,3));

p1=newPanel(newGridLayout(1,3,5,5));//用于存放backspace,ce,c三键
p2=newPanel(newGridLayout(4,5,5,5));//用于存放数字区及附近共20键,此处间隙设置可能不合理,以后调整
p3=newPanel(newGridLayout(5,1,5,5));//用于存放MC,MR,MS,M+键及显示M状态文本框,此处间隙设置可能不合理,以后调整
p4=newPanel(newFlowLayout());//用于存放p1,p2
p5=newPanel(newFlowLayout());
p6=newPanel(newFlowLayout());
p4.add(p1);
p4.add(p2);

tf1=newTextField(35);//存放显示区
tf1.setText("0.");
tf1.setEditable(false);
p5.add(tf1);
f.add(p5,BorderLayout.NORTH);
f.add(p4,BorderLayout.CENTER);
f.add(p3,BorderLayout.WEST);

b1=newButton("1");
b2=newButton("2");
b3=newButton("3");
b4=newButton("4");
b5=newButton("5");
b6=newButton("6");
b7=newButton("7");
b8=newButton("8");
b9=newButton("9");
b0=newButton("0");

b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
b7.addActionListener(this);
b8.addActionListener(this);
b9.addActionListener(this);
b0.addActionListener(this);

bDiv=newButton("/");
bSqrt=newButton("sqrt");
bMulti=newButton("*");
bMinus=newButton("-");
bPercent=newButton("%");
bPlus=newButton("+");
bReciprocal=newButton("1/x");
bEqual=newButton("=");
bDot=newButton(".");
bNegative=newButton("+/-");

bDiv.addActionListener(this);
bSqrt.addActionListener(this);
bMulti.addActionListener(this);
bMinus.addActionListener(this);
bPercent.addActionListener(this);
bPlus.addActionListener(this);
bReciprocal.addActionListener(this);
bEqual.addActionListener(this);
bDot.addActionListener(this);
bNegative.addActionListener(this);

p2.add(b7);
p2.add(b8);
p2.add(b9);
p2.add(bDiv);
p2.add(bSqrt);
p2.add(b4);
p2.add(b5);
p2.add(b6);
p2.add(bMulti);
p2.add(bPercent);
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(bMinus);
p2.add(bReciprocal);
p2.add(b0);
p2.add(bNegative);
p2.add(bDot);
p2.add(bPlus);
p2.add(bEqual);

bBackspace=newButton("Backspace");
bCE=newButton("CE");
bC=newButton("C");

bBackspace.addActionListener(this);
bCE.addActionListener(this);
bC.addActionListener(this);

p1.add(bBackspace);
p1.add(bCE);
p1.add(bC);

tf2=newTextField(2);
tf2.setEnabled(false);
tf2.setBackground(Color.LIGHT_GRAY);
bMC=newButton("MC");
bMR=newButton("MR");
bMS=newButton("MS");
bM=newButton("M+");

bMC.addActionListener(this);
bMR.addActionListener(this);
bMS.addActionListener(this);
bM.addActionListener(this);

p6.add(tf2);
p3.add(p6);
p3.add(bMC);
p3.add(bMR);
p3.add(bMS);
p3.add(bM);

f.setVisible(true);
f.addWindowListener(this);

}
publicvoidactionPerformed(ActionEvente)
{
//key0to9
if(this.keyAvailable&&e.getActionCommand().length()==1&&e.getActionCommand().compareTo("0")>=0&&e.getActionCommand().compareTo("9")<=0)
{
if(this.isTempNowInput)
{
this.dNowInput=0;
this.isTempNowInput=false;
}
this.nBitsNum++;
if(this.alreadyHaveDot==false)
this.dNowInput=this.dNowInput*10+Double.parseDouble(e.getActionCommand());
else
{
doubletemp=Double.parseDouble(e.getActionCommand());
for(inti=this.n;i<0;i++)
{
temp*=0.1;
}
this.dNowInput+=temp;
this.n--;
}
this.tf1.setText(Double.toString(this.dNowInput));
}
//keydot
if(this.keyAvailable&&e.getActionCommand()==".")
{
if(this.alreadyHaveDot==false)
{
this.nBitsNum++;
this.alreadyHaveDot=true;
this.n=-1;
}
}
//key"+","-","*","/"
if(this.keyAvailable&&e.getActionCommand()=="+"||e.getActionCommand()=="-"||e.getActionCommand()=="*"||e.getActionCommand()=="/")
{
if(this.alreadyClickedEqueal)
{
this.dNowInput=this.dResult;
this.isTempNowInput=true;
}
else
{
switch(this.nOperation)
{
case1:this.dResult+=this.dNowInput;break;
case2:this.dResult-=this.dNowInput;break;
case3:this.dResult*=this.dNowInput;break;
case4:
{
if(this.dNowInput==0)
{
tf1.setText("除数不能为零");
this.keyAvailable=false;
}
elsethis.dResult=this.dResult/this.dNowInput;
}
}
if(this.keyAvailable)tf1.setText(Double.toString(this.dResult));
this.dNowInput=0;
}
if(e.getActionCommand()=="+")
{
this.nOperation=1;
}
if(e.getActionCommand()=="-")
{
this.nOperation=2;
}
if(e.getActionCommand()=="*")
{
this.nOperation=3;
}
if(e.getActionCommand()=="/")
{
this.nOperation=4;
}
this.nBitsNum=0;
this.alreadyClickedEqueal=false;
}
//key"+/-"
if(this.keyAvailable&&e.getActionCommand()=="+/-")
{
this.dNowInput=0-this.dNowInput;
tf1.setText(Double.toString(this.dNowInput));
}
//key"C"
if(e.getActionCommand()=="C")
{
this.nBitsNum=0;
this.dResult=0;
this.dNowInput=0;
this.alreadyHaveDot=false;
this.n=0;
this.nOperation=1;
this.keyAvailable=true;
this.alreadyClickedEqueal=false;
tf1.setText("0.");
}
//key"CE"
if(e.getActionCommand()=="CE")
{
this.nBitsNum=0;
this.dNowInput=0;
this.alreadyHaveDot=false;
this.n=0;
this.nOperation=1;
this.keyAvailable=true;
tf1.setText("0.");
}

//key"sqrt"
if(this.keyAvailable&&e.getActionCommand()=="sqrt")
{
if(this.alreadyClickedEqueal)
{
if(this.dResult>=0)
{
this.dResult=Math.sqrt(this.dResult);
tf1.setText(Double.toString(this.dResult));
}
else
{
tf1.setText("函数输入无效");
this.keyAvailable=false;
}
}
else
{
if(this.dNowInput>=0)
{
this.dNowInput=Math.sqrt(this.dNowInput);
tf1.setText(Double.toString(this.dNowInput));
}
else
{
tf1.setText("函数输入无效");
this.keyAvailable=false;
}
}
}
//key"1/x"
if(this.keyAvailable&&e.getActionCommand()=="1/x")
{
if(this.dNowInput==0)
{
tf1.setText("除数不能为零");
this.keyAvailable=false;
}
else
{
this.dNowInput=1/this.dNowInput;
tf1.setText(Double.toString(this.dNowInput));
}
}
//key"="
if(this.keyAvailable&&e.getActionCommand()=="=")
{
this.alreadyClickedEqueal=true;
switch(this.nOperation)
{
case1:this.dResult+=this.dNowInput;break;
case2:this.dResult-=this.dNowInput;break;
case3:this.dResult*=this.dNowInput;break;
case4:
{
if(this.dNowInput==0)
{
tf1.setText("除数不能为零");
this.keyAvailable=false;
}
elsethis.dResult=this.dResult/this.dNowInput;
}
}
if(this.keyAvailable)tf1.setText(Double.toString(this.dResult));
}
//key"MS"
if(this.keyAvailable&&e.getActionCommand()=="MS")
{
this.dMemory=this.dNowInput;
if(this.dMemory!=0)
tf2.setText("M");
}
//key"MC"
if(this.keyAvailable&&e.getActionCommand()=="MC")
{
this.dMemory=0;
tf2.setText("");
}
//key"MR"
if(this.keyAvailable&&e.getActionCommand()=="MR")
{
this.dNowInput=this.dMemory;
tf1.setText(Double.toString(this.dNowInput));
}
//key"M+"
if(this.keyAvailable&&e.getActionCommand()=="M+")
{
this.dMemory+=this.dNowInput;
if(this.dMemory!=0)
tf2.setText("M");
elsetf2.setText("");
}
//key"%"
if(this.keyAvailable&&e.getActionCommand()=="%")
{
this.dNowInput=(this.dResult*this.dNowInput)/100;
tf1.setText(Double.toString(this.dNowInput));
}
//key"Backspace"
if(this.keyAvailable&&e.getActionCommand()=="Backspace")
{
if(!this.alreadyClickedEqueal){
if(this.dNowInput!=0)
{
if(this.alreadyHaveDot)
{
if(this.n==-1)
{
this.alreadyHaveDot=false;
this.n=0;
}
else
{
Stringstr,str1;
str=tf1.getText();
str1=str.substring(0,this.nBitsNum-1);
this.nBitsNum--;
this.n++;
this.dNowInput=Double.parseDouble(str1);
tf1.setText(Double.toString(this.dNowInput));
}
}
else
{
inttemp;
temp=(int)(this.dNowInput/10);
this.dNowInput=(double)temp;
tf1.setText(Double.toString(this.dNowInput));
}
}
}
}
}
publicstaticvoidmain(Stringargs[])
{
Calculationcal=newCalculation();
cal.display();
}
publicvoidwindowClosing(WindowEvente)
{
System.exit(0);
}
}

⑶ 电脑是谁发明出来的,后来怎么改进

第一台计算机是美国军方定制,专门为了计算弹道和射击特性表面而研制的,承担开发任务的“莫尔小组”由四位科学家和工程师埃克特、莫克利、戈尔斯坦、博克斯组成。1946年这台计算机主要元器件采用的是电子管。该机使用了1500
ENIAC
个继电器,18800个电子管,占地170m2,重量重达30多吨,耗电150KW,造价48万美元。开机时让周围居民暂时停电。这台计算机每秒能完成5000次加法运算,400次乘法运算,比当时最快的计算工具快300倍,是继电器计算机的1000倍、手工计算的20万倍。用今天的标准看,它是那样的“笨拙”和“低级”,其功能远不如一只掌上可编程计算器,但它使科学家们从复杂的计算中解脱出来,它的诞生标志着人类进入了一个崭新的信息革命时代。
具体的你可以点击链接了解。http://ke..com/link?url=PGXNfLGwtO1ms5eeMjl-Mt8rpbMr0W3YkHqVLsUrzXdV_

⑷ 基础代谢率低是好事还是坏事怎样调整

一、当然是坏事,基础代谢就是你一天光睡觉消耗的能量,

一般来说年龄越大基础代谢越低,这样就是为什么中老年人比较容易发胖。如果基础代谢比较低,那会比较容易发胖。

二、

  1. 调整饮食热量

    有节食减肥的相关研究报告指出,一天只吃一餐50卡的的热量,和一天吃三餐累积1000卡总热量比较时,减重的成绩和速度是一样,并没有更多或更快,所以如果你现在的饮食计划为一天1000卡,遇上体重停滞期时,可以增加至一天1200卡,这样反而容易突破瓶颈。

2 .补充维他命B群,不要成为夜猫子


3.多喝水

基本上,光是多喝水就能促进肠胃蠕动,并透过流汗或排尿,把体内多余的毒素和废物排出来,加速新陈代谢,多多饮用不仅没有热量,还能加速新陈代谢,可算是一举两得。

4.停止无效的节食,多摄取蛋白质

别再漫无目的的节食了,否则你会发现身体越来越糟,体重却是一动也不动!因为当大脑接收到饥饿的讯息后,为了维持正常身体机能,便会自动调节使新陈代谢的速度减缓,虽然吃得少,但消耗能力同时也变少了,这种方式当然行不通,只会造成身体的伤害。

相反地,改变饮食内容,加强摄取纤维素与蛋白质,才是提升新陈代谢的安全方式,含有容易消化的蛋白质及高含量的次亚麻油酸的食物,能帮助提升热量的代谢并加强免疫功能。

5.多做深呼吸

别怀疑,呼吸的顺畅会对新陈代谢有所影响。呼吸的目的是为了把新鲜的氧气送进肺部,经由气体交换后,再把不要的废物及二氧化碳排出体外,完成体内氧化代谢与循环的功效。正常的静息呼吸都是无自主意识下的反射动作平均每分钟12~15次,每次吸气送进肺部的容量实在有限,

而事实上,呼吸频率越快表示呼吸量越小,吸进肺部的氧气,还来不及完成作用,就又被送出去了,加上短促的呼气,更使得废弃的二氧化碳继续残留在肺里,所以喽!要经常提醒自己做做深呼吸,帮助加速体内废弃物的代谢。

6.不喜欢喝水建议可选能促进代谢的绿茶

绿茶中的氨基酸、多酚类、维生素等成分,可以帮助降低血脂和胆固醇,并能调节脂肪代谢,除此之外,茶中的咖啡因同时具有利尿和刺激胃液分泌的作用,还可增加肌肉的呼吸速度及工作量,因此多喝不含糖的绿茶有益健康。

且具有利尿作用,经常饮用对于皮肤粗糙、消除浮肿、改善便秘等都有所助益。另外,每天早晨喝点醋,也可提高人体新陈代谢,因为含有氨基酸的醋,能促进消耗体内过多脂肪,加强蛋白质和醣类的代谢。

7.利用正确的按摩手法也能促进代谢

体内淋巴液与血液循环是否通畅,会影响身体对于废物、毒素等物质的排除速度,因此透过正确的按摩手法,也能维持血液循环的顺畅,加速代谢,顺利处理体内废物。

这种从四肢末梢朝心脏方向按摩的“向心性按摩”,对于推动淋巴及血液的流动有所助益,能使肌肉的代谢更加旺盛,提供细胞更多促进代谢的营养素与帮助脂肪燃烧的氧气,同时加速排除废物,每天看电视的时候顺便做做按摩,轻轻松松就能更健康。

8. 泡泡热水澡就能变美丽

泡澡是另一个促进新陈代谢最简单的方法之一,利用高温反复入浴的方式,促进血管收缩、扩张,并刺激汗腺发汗,每次泡澡3分钟,休息5分钟再入浴的循环重复三次,就能在不知不觉中消耗大量能量,效果相当好。同时,泡澡也能促进老旧角质更新,保持肌肤光滑细致。

必须注意的是,心脏不好的人并不适合洗三温暖或常泡热水澡,此时不妨以传统的保健良方——热水泡脚来取代,这不只能使脚部微血管扩张,促进全身血液循环,还可增加细胞通透性,提高新陈代谢,同时达到健身的作用,并且改善双脚冰冷的情况。

9. 加入重量训练,增加肌肉组织

人体内的肌肉组织越多,越能燃烧更多热量,使新陈代谢加速,但是过了30岁之后,肌肉会逐渐流失,进而导致代谢下降,因此,若想维持良好的代谢速度,就必须赶紧锻炼,以增加肌肉量。对肌肉组织较少的女性来说,举重这类可以帮助增加肌肉的重量训练运动,就显得格外重要,因为增加肌肉数量就能增加新陈代谢。

一旦肌肉量增加了,一天将可以增加消耗100到300卡洛里,甚至更多。不必担心肌力训练做多了,会练出一身“健美的肌肉”,因为男女的肌肉组织并不相同,所以不用担心会变成肌肉男。

10. 运动是提升代谢最快速的捷径

别忘了运动333原则: 每次运动之后,人体基础代谢率会持续升高24小时!这就是为什么医生们都建议2天运动一次或每周运动三次即可;可是注意喔~每次需要持续半小时以上才行,因为运动时的前15分钟燃烧的是“肝糖类”,运动达半小时之后才会开始燃烧体内的脂肪。

千万别小看这短短30分钟的运动量,它除了可以帮助消耗热量、减轻体重外,更大的好处是运动之后,能将氧气带到全身各部位,大大提升新陈代谢率、有效燃烧脂肪,效果并会持续数个小时之久。

(4)bmr编程扩展阅读:

提高新陈代谢的其他方法:

1、“不要狂减热量的摄入”

人体有着一套自动保持正常体重的程序,如果你突然从饮食中减掉 1000 大卡的热量,你身体的基础新陈代谢率将自动减缓,这不会帮你更好的瘦身。你应该做的是循序渐进,慢慢减少热量的摄入,比如今天少摄入 200 大卡,保持几天后继续减少热量的摄入。

2、“早餐一定要吃”

早餐是三餐中与代谢及减肥关系最密切的。人在睡眠时,新陈代谢率会很低,早晨的第一餐会让你的新陈代谢恢复正常水平,帮助你更好的消耗热量。所以,如果忽略早餐,身体在午饭之前不可能和往常一样燃烧脂肪,早餐就像是新陈代谢的启动器。

3、“多吃蛋白质食物”

摄取足量的蛋白质能够提高肌体的新陈代谢水平,使人体每日多燃烧 150~200 大卡的热量。蛋白质主要是由氨基酸组成的,肌体消化这类食物比消化脂肪及碳水化合物更费时费力。所以,要将它们分解掉就需要燃烧更多的热量。我们应当保证每日摄入总热量的 25%~35% 来自蛋白质,这样的饮食结构才算平衡。建议每公斤体重摄入蛋白为 1.2 克- 2 克。

4、“增加进食次数”

每天吃 4-5 顿小餐要比 3 顿大餐更能保持较高的新陈代谢水平。两餐之间的时间要尽量保持在 2~3 小时之内,并且要保证每餐必须有蛋白质食物,它可是新陈代谢的增强剂。

5、“学会吃碳水化合物”

精制碳水化合物,如白面,能使胰岛素水平不稳定,也相应促进了脂肪在肌体内的存储,由此会降低新陈代谢率。因而,补充碳水化合物时,应以含高纤维者为佳,如各类蔬菜、水果及全麦谷物等,它们都属于好的碳水化合物,这些食物对胰岛素水平影响很小。

6、“戒酒”

拿酒杯时要三思。最近有多项研究表明,餐前饮酒会使人多摄入 200 千卡热量。另有研究发现,肌体在发挥新陈代谢功能时,首先燃烧的是酒精中所含的热量。也就是说,其他饮食中的热量有可能作为脂肪存储于皮下。养生的红葡萄酒,可以小酌一杯,但也不要贪杯。

7、“进行力量训练”

力量训练是提高身体基础新陈代谢率的最佳方式。随着年龄的增长,肌体基础新陈代谢率会下降,但是力量训练能使肌肉重获新生,1 磅肌肉所燃烧的热量是1 磅脂肪的 9 倍。经常进行力量训练,能随时随地使基础新陈代谢率提高 6.8%~7.8% 。

也就是说,如果你体重 120 磅,每天就会多燃烧约 100 千卡热量,即使睡觉时也在燃烧脂肪。

8、“学会利用经期燃烧脂肪”

每当经前综合症带来的情绪波动与肢体肿胀出现,女性就喜欢懒洋洋地窝在沙发上。不过,如果在月经来临之前的这段时间进行健身训练,会减掉更多的肥肉。女性在从排卵到月经来潮的时间内进行健身锻炼,能多燃烧掉 20% 的脂肪。

因为在经前这段时间内,雌激素与孕激素的水平已达峰值,这些激素能够促进肌体利用脂肪作为能量。

参考资料:

网络-人体新陈代谢率

⑸ 关于单片机的几道编程题,给50分,求帮助。

1:
BM16:
MOV A,R3
JNB ACC.7,BMR
MOV A,R2
CPL A
ADD A,#1
MOV R2,A
MOV A,R3
CPL A
ADDC A,#0
SETB ACC.7
MOV R3,A
BMR:
RET
2:
CHKFF:
MOV R2,#30H
MOV R0,#50H
LOOP:
MOV A,@R0
CJNE A,#0FFH,LOOP1
MOV R0,#81H
MOV @R0,#01H
RET
LOOP1:
INC R0
SJMP LOOP
3:
FMQ:
CLR P1.0
LCALL DELAY
SETB P1.0
LCALL DELAY
SJMP FMQ
DELAY:
MOV R2,#10
DELAY1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DELAY1
RET
4:
MDAT:
MOV DPTR,#1000H
MOV R2,#200
MOV R0,#30H
MLP:
MOVX A,@DPTR
MOV @R0,A
INC R0
INC DPTR
DJNZ R2,MLP
RET
5:
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0INT
ORG 0030H
T0INT:
CLR TR0
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
INC R2
MOV A,R2
CJNE A,#10,T0RET
MOV R2,#0
SETB 00H
T0RET:
RETI
MAIN:
MOV SP,#5FH
MOV TMOD,#01H
SETB TR0
SETB ET0
SETB EA
MOV R2,#0
CLR 00H
SJMP $
END
6:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#5FH
MOV A,#0FEH
LOOP:
MOV P1,A
LCALL DELAY
RL A
SJMP LOOP
DELAY:
MOV R2,#100
DELAY1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DELAY1
RET
END

⑹ 15w左右的电脑硬件配置谁会 谢谢!

4路走起啊!再来个3-4个980 TI SLI 。 内存搞个128G以上。具体配置另外给你
E5-2699 v3 两颗,2万左右
华硕Z10PE-D16 WS 双路工作站主板(支持3个显卡)4000左右
显卡是980TI或者TITAN X 两个 1-2万左右 再加一个TESLA 便宜的1万 贵的3万左右。
英特尔 750 400G Series PCI-E NVMe SSD固态硬盘 估计只能放一个了。
128G内存 估价5000以上1万以内。
电源机箱算1500. 不带显示器,推荐LG 显示器。最多10万估计可以干翻了。
觉得不行自行看一下http://itianti.sinaapp.com/index.php/cpu 排行榜数据!TITANX 和980ti 数据自己看。自己比较排行榜数据。

⑺ 求《JAVA数字图像处理》全文免费下载百度网盘资源,谢谢~

《JAVA数字图像处理》网络网盘pdf最新全集下载:
链接: https://pan..com/s/1dBgm094OBx5BojEk_BmRFg

?pwd=f8sq 提取码: f8sq
简介:在开始本书内容之前,笔者假设你已经有了面向对象语言编程的基本概念,了解Java语言的基本语法与特征,原因在于本书的所有源代码都是基于Java语言实现的,而且是基于Java开发环境运行与演示所有图像处理算法的。本书第1章到第3章是为了帮助读者了解与掌握Java图形与GUI编程的基本知识与概念而写的。本章主要介绍Java GUI编程中基本的图形知识,针对GU1编程,Java语言提供了两套几乎并行的API,分别是Swing与AWT。早期的Java GUJ编程中主要使用AWT的相关组件,但是AWT的功能并不是十分强大,而且严重依赖本地接口。于是在Java 1.3及后续版本中引入了Swing工具实现GUl编程,Swing中的组件大多数都是基于纯Java语言实现的,而不是通过本地组件实现的,所以它们是轻量级的GUI组件,同时Swing对图形与图像的支持操作也有很大的提高与增强。如何区分AWT组件与Swing组件?一个简单而且相当直观的方法是看Class的名称,Swing的组件大多数带有大写的前缀字母J。

热点内容
配置管理需要会什么 发布:2025-07-14 01:35:35 浏览:372
去除头条中的缓存 发布:2025-07-14 01:27:38 浏览:783
php开启错误 发布:2025-07-14 01:16:49 浏览:998
esp数据库 发布:2025-07-14 01:16:44 浏览:980
python查找文件路径 发布:2025-07-14 01:16:03 浏览:514
phpapachetomcat 发布:2025-07-14 01:08:41 浏览:123
服务器运维看什么书 发布:2025-07-14 01:07:32 浏览:988
密码器动态密码怎么弄 发布:2025-07-14 00:44:27 浏览:386
小米怎么把视频加密 发布:2025-07-14 00:42:59 浏览:406
在线申诉找回密码根本什么都没有 发布:2025-07-14 00:41:22 浏览:306