文档库 最新最全的文档下载
当前位置:文档库 › 用Windows C 编写一个记事本程序

用Windows C 编写一个记事本程序

用Windows C 编写一个记事本程序
用Windows C 编写一个记事本程序

用Windows C 编写一个记事本程序

程序运行界面

一从C/C++到Windows编程

我们学习的C/C++程序都是DOS程序(或称为Windows控制台程序),也就是现在大学里的开设的《C/C++程序设计》的内容,这些程序由于不涉及到Windows 编程的细节,因此比较容易入门学习,这对训练初学者的编程思想是很有用的,也是有益的。但是当我们基本掌握了C/C++程序设计后,就不能仅仅停留在DOS 下(或Windows控制台下)编写、运行程序。我们应该从编程思想的训练到Windows实用编程的转变。对于初学Windows 编程的人来说,入门是难了一点,我们先介绍一个最简单的Hello 程序开始,然后再介绍记事本程序。

#include

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow) {

MessageBox(NULL,"Hello 欢迎使用Turbo C for Windows 集成实验与学习环境!","我的第一个Windows 程序",MB_OK);

return 0;

}

程序的运行结果是:

程序解析:

1、windows.h是每一个Windows程序都需要的头文件。

2、WinMain函数是所有Windows C程序的入口,类似于DOS C中的main函数。

3、MessageBox是一个Win32 API函数(API,Application Programming Interface 应用程序接口),其作用是弹出一个对话框,显示消息的内容。该函数的第一个参数是用来指定父窗口句柄,即对话框所在的窗口句柄。第二个参数是用来显示消息的内容(你可以修改成你想显示的内容)。第三个参数是对话框标的标题,如本例的“我的第一个Windows程序”,第四个参数是指定对话框中显示的按钮,试一试,将MB_OK修改成MB_OKCANCEL,运行一下程序会出现什么结果,再试一试修改成MB_RETRYCANCEL

二、Windows 程序简介

(1)Windows C程序的组成:

1.C程序源文件,扩展名为.c或.cpp

2.头文件,扩展名为.h

3.资源文件,扩展名为.rc

(2)源程序的组成结构

Windows C程序有相对固定的基本结构,一般有入口函数WinMain和窗口函数。

1、WinMain函数

是所有Windows C程序的入口,类似于DOS C的main函数,其功能是完成一系列的定义和初始化工作,并产生消息循环。消息循环是整个程序运行的核心。

WinMain函数有三个基本的组成部分:函数说明、初始化和消息循环

a、WinMain函数的说明:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)

hInstance 应用程序当前实例句柄

hPrevInstance 前一个实例句柄,在32位系统中该参数永远是NULL

szCmdLine 程序运行时的命令行参数

iCmdShow 程序运行时的显示方式,如最大化、最小化、隐藏显示等。

b、初始化

初始化包括窗口类的定义、注册、创建窗口实例和显示窗口四部分。

这是固定格式,所有的Windows程序基本一样,记住即可,具体参见下面的程序实例的注释。

2、窗口函数

窗口函数定义了Windows C程序对接受到的不同消息的响应,其中包含了应用程序对各种可能接收到的消息的处理过程,是消息处理分支控制语句的集合。通常窗口函数是有一个或多个switch语句组成。每一条case语句对应一种消息,当应用程序接收到一个消息时,就会执行相应case 语句下的程序模块来完成相应的功能。

窗口函数说明:

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

参数说明:

hwnd 窗口句柄

message 代表所处理消息的消息值

wParam 消息的附加参数,是message的进一步信息

lParam 消息的附加参数,是message的进一步信息

一般用法:

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{

...

switch (message)

case 常数1:

...

case 常数2:

...

...

case WM_DESTROY:

PostQuitMessage (0) ; //在消息队列中插入一条“退出”消息

return 0 ;

}

return DefWindowProc (hwnd, message, wParam, lParam);//执行默认的消息处理

}

窗口函数的主体是消息处理语句,该语句是有一系列case语句组成。我们学习者自需要根据窗口可能收到的消息在case语句中编写相应的处理程序即可。

1.记事本主程序

#include

#include "sample.h"

static char g_szClassName[] = "MyWindowClass";

static HINSTANCE g_hInst = NULL;

#define IDC_MAIN_TEXT 1001

BOOL LoadFile(HWND hEdit, LPSTR pszFileName)

{

HANDLE hFile;

BOOL bSuccess = FALSE;

hFile = CreateFile(pszFileName, GENERIC_READ, FILE_SHARE_READ, NULL,

OPEN_EXISTING, 0, 0);

if(hFile != INV ALID_HANDLE_V ALUE)

{

DWORD dwFileSize;

dwFileSize = GetFileSize(hFile, NULL);

if(dwFileSize != 0xFFFFFFFF)

LPSTR pszFileText;

pszFileText = (LPSTR)GlobalAlloc(GPTR, dwFileSize + 1);

if(pszFileText != NULL)

{

DWORD dwRead;

if(ReadFile(hFile, pszFileText, dwFileSize, &dwRead, NULL))

{

pszFileText[dwFileSize] = 0;

if(SetWindowText(hEdit, pszFileText))

bSuccess = TRUE;

}

GlobalFree(pszFileText);

}

}

CloseHandle(hFile);

}

return bSuccess;

}

BOOL SaveFile(HWND hEdit, LPSTR pszFileName)

{

HANDLE hFile;

BOOL bSuccess = FALSE;

hFile = CreateFile(pszFileName, GENERIC_WRITE, 0, 0,

CREA TE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);

if(hFile != INV ALID_HANDLE_V ALUE)

{

DWORD dwTextLength;

dwTextLength = GetWindowTextLength(hEdit);

if(dwTextLength > 0)

{

LPSTR pszText;

pszText = (LPSTR)GlobalAlloc(GPTR, dwTextLength + 1);

if(pszText != NULL)

{

if(GetWindowText(hEdit, pszText, dwTextLength + 1))

{

DWORD dwWritten;

if(WriteFile(hFile, pszText, dwTextLength, &dwWritten, NULL)) bSuccess = TRUE;

}

GlobalFree(pszText);

}

CloseHandle(hFile);

}

return bSuccess;

}

BOOL DoFileOpenSave(HWND hwnd, BOOL bSave)

{

OPENFILENAME ofn;

char szFileName[MAX_PA TH];

ZeroMemory(&ofn, sizeof(ofn));

szFileName[0] = 0;

ofn.lStructSize = sizeof(ofn);

ofn.hwndOwner = hwnd;

ofn.lpstrFilter = "文本文件 (*.txt)\0*.txt\0所有文件 (*.*)\0*.*\0\0";

ofn.lpstrFile = szFileName;

ofn.nMaxFile = MAX_PA TH;

ofn.lpstrDefExt = "txt";

if(bSave)

{

ofn.Flags = OFN_EXPLORER | OFN_PA THMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;

if(GetSaveFileName(&ofn))

{

if(!SaveFile(GetDlgItem(hwnd, IDC_MAIN_TEXT), szFileName))

{

MessageBox(hwnd, "保存文件失败.", "错误信息",

MB_OK | MB_ICONEXCLAMATION);

return FALSE;

}

}

}

else

{

ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY; if(GetOpenFileName(&ofn))

{

if(!LoadFile(GetDlgItem(hwnd, IDC_MAIN_TEXT), szFileName))

{

MessageBox(hwnd, "打开文件失败.", "错误信息",

MB_OK | MB_ICONEXCLAMATION);

return FALSE;

}

}

}

return TRUE;

}

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {

switch(Message)

{

case WM_CREA TE:

CreateWindow("EDIT", "",

WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL | ES_MULTILINE |

ES_WANTRETURN,

CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,

hwnd, (HMENU)IDC_MAIN_TEXT, g_hInst, NULL);

SendDlgItemMessage(hwnd, IDC_MAIN_TEXT, WM_SETFONT,

(WPARAM)GetStockObject(DEFAULT_GUI_FONT), MAKELPARAM(TRUE, 0));

break;

case WM_SIZE:

if(wParam != SIZE_MINIMIZED)

MoveWindow(GetDlgItem(hwnd, IDC_MAIN_TEXT), 0, 0, LOWORD(lParam),

HIWORD(lParam), TRUE);

break;

case WM_SETFOCUS:

SetFocus(GetDlgItem(hwnd, IDC_MAIN_TEXT));

break;

case WM_COMMAND:

switch(LOWORD(wParam))

{

case CM_FILE_OPEN:

DoFileOpenSave(hwnd, FALSE);

break;

case CM_FILE_SA VEAS:

DoFileOpenSave(hwnd, TRUE);

break;

case CM_FILE_EXIT:

PostMessage(hwnd, WM_CLOSE, 0, 0);

break;

case CM_ABOUT:

MessageBox (NULL, "一个Windows C 记事本程序" , "关于...", 0); }

break;

case WM_CLOSE:

DestroyWindow(hwnd);

break;

case WM_DESTROY:

PostQuitMessage(0);

break;

default:

return DefWindowProc(hwnd, Message, wParam, lParam);

}

return 0;

}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)

{

WNDCLASSEX WndClass;

HWND hwnd;

MSG Msg;

g_hInst = hInstance;

WndClass.cbSize = sizeof(WNDCLASSEX);

WndClass.style = 0;

WndClass.lpfnWndProc = WndProc;

WndClass.cbClsExtra = 0;

WndClass.cbWndExtra = 0;

WndClass.hInstance = g_hInst;

WndClass.hIcon = LoadIcon(NULL, IDI_APPLICA TION);

WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);

WndClass.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);

WndClass.lpszMenuName = "MAINMENU";

WndClass.lpszClassName = g_szClassName;

WndClass.hIconSm = LoadIcon(NULL, IDI_APPLICA TION);

if(!RegisterClassEx(&WndClass))

{

MessageBox(0, "注册窗口失败", "错误信息",

MB_ICONEXCLAMATION | MB_OK | MB_SYSTEMMODAL);

return 0;

}

hwnd = CreateWindowEx(

WS_EX_CLIENTEDGE,

g_szClassName,

"一个记事本程序",

WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT, CW_USEDEFAULT, 800, 600,

NULL, NULL, g_hInst, NULL);

if(hwnd == NULL)

{

MessageBox(0, "创建窗口失败", "错误信息",

MB_ICONEXCLAMATION | MB_OK | MB_SYSTEMMODAL);

return 0;

}

ShowWindow(hwnd, nCmdShow);

UpdateWindow(hwnd);

while(GetMessage(&Msg, NULL, 0, 0))

{

TranslateMessage(&Msg);

DispatchMessage(&Msg);

}

return Msg.wParam;

}

2.记事本头文件 sample.h

#define CM_FILE_SA VEAS 9072

#define CM_FILE_EXIT 9071

#define CM_FILE_OPEN 9070

#define CM_ABOUT 9069

3.记事本资源文件

#include "sample.h"

A ICON MOVEABLE PURE LOADONCALL DISCARDABLE "sample.ico"

MAINMENU MENU

{

POPUP "文件(&F)"

{

MENUITEM "打开(&O)...", CM_FILE_OPEN

MENUITEM "另存为(&S)...", CM_FILE_SA VEAS

MENUITEM SEPARA TOR

MENUITEM "关闭", CM_FILE_EXIT

}

POPUP "帮助(&H)"

{

MENUITEM "关于(&A)", CM_ABOUT

}

}

一点经验

所有Windows 程序的基本结构都与上面的实例相同或相近(说明:有的程序是将窗口类和窗机窗口封装成函数后调用,其实质是一样的),记住一个例子,编写其他程序时,在其上面修改即可。

一点建议:由于Windows 编程精大博深,初学者想把什么都搞明白是不可能的,要学会一点“不求甚解”,这里说的“不求甚解”并不是指不认真学习。初学者最怕钻牛角尖:一个问题不明白,就在那里卡住,非解决它不可——这种方法是不可取的。

首先,它会严重打击你的自信心,使你丧失继续学习下去的兴趣;

其次,这样浪费了许多时间。因此学习时要给自己留一些“不懂”的余地。例如第一遍读书时要允许自己似懂非懂,用规定的时间(例如两个星期)把它看完,然后开始第二遍学习。开始时许多不明白的东西,下次就容易理解多了。

用delphi编写的记事本代码.

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ComCtrls, ExtCtrls, ToolWin, ImgList; type TForm1 = class(TForm MainMenu1: TMainMenu; RichEdit1: TRichEdit; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; FontDialog1: TFontDialog; N4: TMenuItem; N5: TMenuItem; N6: TMenuItem; N7: TMenuItem; N8: TMenuItem; N9: TMenuItem; N10: TMenuItem; N11: TMenuItem; N12: TMenuItem; N13: TMenuItem; N14: TMenuItem; N15: TMenuItem; N16: TMenuItem; N17: TMenuItem; N18: TMenuItem; N19: TMenuItem; N20: TMenuItem; PopupMenu1: TPopupMenu; FindDialog1: TFindDialog; N21: TMenuItem; PrintDialog1: TPrintDialog; N22: TMenuItem; N23: TMenuItem; N24: TMenuItem; N25: TMenuItem; N26: TMenuItem; N27: TMenuItem; N28: TMenuItem; N31: TMenuItem; N32: TMenuItem; S1: TMenuItem; Timer1: TTimer; StatusBar2: TStatusBar; ToolBar1: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; ToolButton6: TToolButton; ToolButton7: TToolButton; ToolButton8: TToolButton; ToolButton9: TToolButton; ToolButton10: TToolButton; ToolButton11: TToolButton; ToolButton12: TToolButton; ToolButton13: TToolButton; ImageList1: TImageList; procedure N2Click(Sender: TObject; procedure N3Click(Sender: TObject; procedure N7Click(Sender: TObject; procedure N8Click(Sender: TObject; procedure N9Click(Sender: TObject; procedure N14Click(Sender: TObject; procedure N21Click(Sender: TObject; procedure N16Click(Sender: TObject; procedure N17Click(Sender: TObject; procedure N18Click(Sender: TObject; procedure N12Click(Sender: TObject; procedure N20Click(Sender: TObject; procedure N6Click(Sender: TObject; procedure S1Click(Sender: TObject; procedure FindDialog1Find(Sender: TObject; procedure Timer1Timer(Sender: TObject; procedure N24Click(Sender: TObject; procedure N25Click(Sender: TObject; procedure N26Click(Sender: TObject; procedure N27Click(Sender: TObject; procedure N28Click(Sender: TObject; procedure RichEdit1MouseMove(Sender: TObject; Shift:

java 记事本程序设计报告

Xxx学校 JAVA程序设计课程设计报告 课题: 记事本 姓名: 学号: 同组姓名: 专业班级: 指导教师: 设计时间

目录 一、系统描述 (3) 二、分析与设计 (4) 1. 分析 (4) 2. 功能模块划分 (4) 3. 功能模块流程图 (5) 4. 各模块的关键代码 (5) 三、系统测试 (7) 四、心得体会 (10) 五、参考文献 (10) 六、附录 (11)

一、系统描述 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。 在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少,所以选择了适合初学者使用的eclipse开发工具。

用记事本编写整人小程序

不需要任何编程基础,不需要任何编程软件,只需使用电脑里自带的记事本软件就可以轻松编写出整人的小程序,甚至是病毒。。。。。。 首先,单击右键,新建一个文本文档,输入:msgbox"你是猪!" 然后,点击文件->另存为->保存类型:所有文件->文件名xxxx.vbs,名字随便起,但一定要记得把后缀名改为 .vbs。

然后打开刚保存的xxxx.vbs

哈哈,很好玩吧,双引号里的内容”你是猪!”可以随意更改,但双引号一定要用英文输入法来写。嗯,下面正式开始整人。。。。。。 按照前面说的,在记事本上输入如下图,并保存为55.vbs。

其中wscript.Sleep 500为停留500毫秒,可随便更改 下面这段代码就是一个启动关机程序的东东,300这个数是指300秒倒计时,这个数字也可以随便改,这段代码也可以独立保存出来作为一个关机程序 dim WSHshell set WSHshell = wscript.createobject("wscript.shell") WSHshell.Run "cmd.exe /c shutdown -s -t 300" 打开这个文件,如果你点击“是”,你就会进入一个死循环中,就是不断地弹出对话框。解决方法是按下Alt+Ctrl+Delete键,选择“进程”,把wscript.exe结束掉。如果点击“否”,

则进入关机倒计时,解决方法是点击“开始”->“运行”,在对话框里输入shutdown -a ,再点击“确定”即可。 最后嘛,把这文件创建桌面快捷方式,然后把图标换了,换成QQ什么的,你懂的,呵呵。。。。。。当然,这种VBS编程还有很多好玩的地方,比如病毒,我也收藏有几个,由于我是一等一的良好市民,就不写上来了。 最后再送上一个程序: dim a do a=inputbox("输入123,否则关机。") if a="123" then msgbox" 很遗憾,你中招了,这是整人程序,你就等着关机吧" WSHshell.Run "cmd.exe /c shutdown -s -t 300" wscript.sleep 1000 exit do else msgbox"乖点,输入123" end if loop

java课设记事本说明书

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2012年秋季学期 Java 课程设计 题目:记事本系统设计 专业班级: 姓名: 学号: 指导教师: 成绩:

目录 摘要 (1) 序言 (2) 正文 (3) 1.系统设计与分析 (3) 2.详细设计 (3) 3.系统测试 (14) 4.软件使用说明书 (17) 设计总结 (18) 参考文献 (19) 致谢 (20) 附录(程序源代码) (21)

摘要 本次课程设计的题目是用java语言编写记事本程序,要求是:用图形界面实现;含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。 本程序主要用到了Java swing组件和事件监听器,还用到了文件的输入输出流。记事本的界面参考了Windows中的记事本界面,并且根据课程设计要求做了适当的调整。 关键字:记事本程序;Java语言;Jcreator

序言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。 在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少, 所以选择了适合初学者使用的JCreator开发工具。

JAVA简单记事本程序设计实验报告(带源码).

JAVA程序设计 实验报告 院系:信息工程系 专业:计算机应用技术 班级:11计算机01班 姓名:Civen 任课教师:XXX 实验题目:JA V A简单记事本程序设计

目录 目录 (1) 一、引言 (2) 1.1 课程设计目的 (2) 1.2 题目说明 (2) 1.3 开发工具介绍 (2) 二、总体设计 ......................................................................... - 4 - 2.1系统开发平台.............................................................. - 4 - 2.2 系统流程图 (4) 2.3功能结构图.................................... 错误!未定义书签。 2.4数据库设计.................................... 错误!未定义书签。 三、详细说明 (4) 3.1 系统实施................................................................... - 11 - 四、系统的调试和运行 (9) 五、课程设计总结 (9) 六、参考文献 (9) 附录(源程序代码) (10)

一、引言 1.1 课程设计目的 1) 复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握; 2) 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和 实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力; 3) 培养学生在项目开发中团队合作精神,创新意识及能力。 1.掌握窗口、菜单等高级组件的应用。 2.掌握Java Swing的使用方法。 3.了解GUI应用程序的创建过程与方法。 1.2 题目说明 课题:学生成绩管理 4.功能要求: 编写一个简单记事本程序,要求包含以下菜单项 文件新建、打开、保存、退出 编辑剪切、拷贝、粘贴、查找 帮助关于 5.实现文件和编辑菜单里的功能 1.3 开发工具介绍 Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同

如何用记事本编写一个简单的java代码

如何用记事本编写一个简单的j a v a代码 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】

一:怎么用记事本写第一个java代码 第一步:新建txt文档 首先我们在F盘新建一个txt文档,并命名为,如下图所示: 第二步:编写代码 我们双击打开:如下图所示 第三步:编写好代码 我们在记事本中写代码,写好后如下所示:

然后我们同时按Ctrl+s键保存,然后关闭记事本即可 上面的源代码如下: public class Test{//这里的Test为类名,这里类名要与我们刚才新建的记事本的名字必须一致,首字母大写 public static void main(String[] args){//java中的主函数的写法 "HelloWorld");//java中的输出语句写法 } } 第三步:打开控制台界面 我们在计算机中,打开如下图界面,

然后在这里,输入cmd,并按回车,然后弹出如图所示

第四步:在控制台中运行并输出 我们用鼠标点击一下里面黑色部分,然后输入F:然后回车,然后再输入javac 然后回车,最后输入java Test,就可以看到结果了,如下图所示:

红色圈出来部分就是结果了 二:温馨提示: 1,上面演算中在控制台中首先输入F:的原因是因为我在F盘建立一个文本文档,并命名为,如果你是把你的文档文档建立在D盘,则应该输入D: 以此类推。 2,如果你是在F盘下的CH文件夹建立一个记事本,并命名为,则输入的情况如下, cd CH表示转到CH这个文件夹下,然后再输入回车,再输入java Test 就可以看到运行结果了

记事本设计步骤

记事本设计步骤 1. 新生成一Windows应用程序,将窗体的标题设置为“记事本”。 2. 在窗体上添加一menuStrip控件,默认Name 为menuStrip1 , 设置菜单内容如下表 3. 在窗体上添加1个richTextBox控件,默认Name属性为richtextBox1,设置属性Dock为中心对齐,使文本框充满整个窗体。 4.给【新建】文件菜单添加代码如下: private void menuNew_Click(object sender, EventArgs e) { richTextBox1.Clear();

richTextBox1.Focus(); richTextBox1.BackColor = Color.White; richTextBox1.ForeColor = Color.Black; richTextBox1.Font = new Font(richTextBox1.Font.FontFamily, 10); } 5. 在窗体上添加openFileDialog , 默认Name属性:openFileDialog1 ,设置属性如下: openFileDialog1.InitialDirectory = "F:\\" ; openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ; openFileDialog1.FilterIndex = 1 ; openFileDialog1.RestoreDirectory = true ; 在【打开】菜单添加代码如下: private void menuOpen_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { try { if ((openFileDialog1.FileName ) !="") { richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.PlainText); } } catch (Exception ex) { MessageBox.Show("错误: 不能读入指定文件. 错误消息: " + ex.Message); } } } 6. 在窗体上添加saveFieDialog ,默认name为saveFileDialog1 ,设置属性如下: saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ; saveFileDialog1.FilterIndex = 1 ; saveFileDialog1.RestoreDirectory = true ; 在【保存】菜单添加代码如下:

编写一个记事本程序_要求:_用图形用户界面实现。_能实现编辑、保存、另存为、查找替换等功能。

import java.io.*; import java.util.Calendar; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class NoteBook extends JFrame implements ActionListener,ItemListener,WindowListener,MouseListener{ Container c = this.getContentPane(); JMenuBar jmb = new JMenuBar(); JColorChooser jcc = new JColorChooser(); JMenu jm1 = new JMenu("文件(F)"); JMenu jm2 = new JMenu("编辑(E)"); JMenu jm3 = new JMenu("格式(O)"); JMenu jm4 = new JMenu("查看(V)"); JMenu jm5 = new JMenu("帮助(H)"); JMenuItem jmi1 = new JMenuItem("新建(N)"); JMenuItem jmi2 = new JMenuItem("打开(O)"); JMenuItem jmi3 = new JMenuItem("保存(S)"); JMenuItem jmi4 = new JMenuItem("退出(X)"); JMenuItem jmi5 = new JMenuItem("撤消(U)"); JMenuItem jmi6 = new JMenuItem("复制(C)"); JMenuItem jmi7 = new JMenuItem("粘贴(P)"); JMenuItem jmi8 = new JMenuItem("剪切(T)"); JMenuItem jmi12 = new JMenuItem("日期和时间"); JMenuItem jmi9 =m new JMenuItem("字体(E)"); JCheckBoxMenuItem jcbmi = new JCheckBoxMenuItem("自动换行(W)"); JMenuItem jmi10 = new JMenuItem("删除(S)"); JMenuItem jmi11 = new JMenuItem("背景颜色(H)"); JTextArea jta = new JTextArea(15,15); JScrollPane jsp = new JScrollPane(jta); //PupolMenu pm = new Pupolmenu(); NoteBook(){ this.addWindowListener(this); c.setLayout(new BorderLayout()); c.add(jmb,BorderLayout.NORTH); this.setTitle("新建文本文档"); jmb.add(jm1); jm1.setMnemonic('f'); jm1.addActionListener(this); jmb.add(jm2); jm2.setMnemonic('e'); jmb.add(jm3); jm3.setMnemonic('o'); jmb.add(jm4);

vb课程设计记事本程序的编写

1 选题的背景与意义 记事本创建的背景 通过一学期的vb课程学习,理解并掌握了许多相关知识,知道了面向对象程序设计的基本概念和可视化程序设计的基本方法。为了更好地掌握与运用vb 中最常用的有关窗体和各种控件的运用、菜单、工具栏、对话框、状态栏、的设计以及文件操作等技术,因此在在学完该课程之后,设计了一个能够编辑编辑文本文档、RichText 文档,其文字处理能力类似于Word的简易记事本。 记事本创建的意义 该记事本具有操作简单,易懂灵活,一目了然的特点,同时由于运用了RichText控件,因此能够打开和编辑任意大的文档,运用起来比windows自带的记事本方便的多。从而为那些计算机技术应用并不熟练但需要使用计算机快速编辑和修改文档的用户提供了便利。同时该程序的编写也使得自己的知识掌握的更见牢固。 2 系统详细设计 主要功能 能够编辑文本文档,其文字处理功能类似于Word。 具有打开、保存、新建和退出文件功能。 具有剪切、复制、粘贴、设置文字的字体以及大小、颜色、对齐等文字编功能。以及字符串的查找功能。 打印功能。

要点的实现既使用技术 首先,在创建程序是应先设置窗体大小和编辑框的大小。 '窗体的加载事件 Private Sub Form_Load() = 0 = 0 = - 4000 = - 5000 = "宋体" '程序运行时字体是宋体 End Sub '设置编辑框的大小和位置 Private Sub Form_Resize() = 60 = 20 = - 100 = - 100 End Sub 第二,程序设计过程中必须先在窗体中添加CommonDialog和RichText控件。 如左图所示。CommonDialog控件的应用使得它提 供了如打开和保存文件,设置打印选项,选择颜 色和字体等操作的一组标准对话框,使我们通过 对话框填写的方式来实现上述操作。RichText控 件的使用是编辑和打开的文件大小不受限制。有 利于文件的编辑。

记事本

目录 第1章课程设计目的与要求 (1) 1.1设计目的 (1) 1.2实验环境 (1) 1.3预备知识 (1) 1.4设计要求 (1) 第2章课程设计内容 (2) 2.1 课题描述 (2) 2.2 系统设计 (3) 2.2.1功能分析 (3) 2.2.2面向对象设计 (4) 2.2.2类成员描述 (6) 2.3程序实现 (8) 2.3.1源码分析 (9) 2.3.2运行结果 (14) 第3章总结 (15) 参考文献 (16)

第1章课程设计目的与要求 1.1设计目的 将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《JAVA语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用JAVA语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握面向对象程序设计的方法。 (6)熟练掌握JAVA语言的基本语法,灵活运用各种数据类型。 (7)进一步掌握在集成环境下如何调试程序和修改程序。 1.2实验环境 硬件要求能运行Windows 操作系统的微机系统。JAVA语言应用程序开发软件使用:VJAVA 系统,或其他JAVA语言应用程序开发软件。 1.3预备知识 熟悉JAVA语言程序设计的基本知识及VJAVA编辑器的使用方法。 1.4设计要求 1.仔细分析设计题目,画出程序流程图,编写程序源代码。 2.积极上机调试源程序,增强编程技巧与调程能力。 3.认真书写课程设计预习报告,课程设计说明书。 4.遵守课程设计要求和机房管理制度,服从指导教师的安排,确保课程设计的顺利完成课程设计内容。

模拟记事本程序

北京理工大学珠海学院课程设计说明书 2012—2013学年第2学期 题目: 模拟记事本程序 学院:计算机学院 专业班级: 学号: 学生姓名: 指导教师: 成绩: 时间: 2013年5月 22日

北京理工大学珠海学院 课程设计任务书 2012—2013学年第2学期 学生姓名: 专业班级: 指导教师:工作部门: 一、课程设计题目 模拟记事本程序 二、课程设计内容 用文本命令行界面模拟记事本功能:包括编辑、保存、另存为、复制、粘贴、查找、替换等功能。 三、进度安排 (1)1-2学时,选定题目、分析需求、理解需求; (2)3-4学时,程序设计,定义数据类型、数据处理方式; (3)5-10学时,编写程序、调试、测试; (4)11-12学时,编写设计报告; (5)13-16学时,答辩。 四、基本要求 (1)只能使用C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块(视情况可另外加分) (4)建立文件操作类、界面显示类及相关接口类,用文件读写实现。 (5)写出课程设计报告,应不少于3000字(不含附录),同一组学生只需提交1份,但必须在报告中列明分工。 课程负责人签名: 年月日

课程设计分工安排 课程设计成绩评定表

模拟记事本摘要 本程序采用纯C++编写,用文本命令行界面模拟记事本功能:包括编辑、保存、另存为、复制、粘贴、查找、替换等功能。运用了vector容器来充当寄存器,还用 #include实现文件的读入读出 关键词:面向对象;模拟记事本;文件读写;编辑、保存、另存为、复制、粘贴、查找、替换 目录 第一章设计内容 (1) 第二章总体设计 (5) 2.1模块化设计 (5) 2.2程序运行示意图 (5) 第三章详细设计 (5) 3.1数据结构设计 (6) 3.2程序模块设计 (6) 3.3流程图 (10) 第四章调试与测试 (10) 4.1调试过程中的主要问题 (10) 4.2测试结果 (10) 参考文献 (13) 心得体会 (13)

键盘使用说明书完整版

一、键盘简介键盘是计算机使用者向计算机输入数据或命令的最基本的设备。常用的键盘上有 101 个键或 103 个键,分别排列在四个主要部分:打字键区、功能键区、编辑键区、小键盘区。 现将键盘的分区以及一些常用键的操作说明如下: ( 一) 打字键区 它是键盘的主要组成部分,它的键位排列与标准英文打字机的键 位排列一样。该键区包括了数字键、字母键、常用运算符以及标点符号键,除此之外还有几个必要的控制键。下面对几个特殊的键及用法作简单介绍。 键的名称 主要功能说明 空格键 键盘上最长的条形键。每按一次该键,将在当前光标的位置上空 出一个字符的位置。 [Enter ↙]回车键 (1)每按一次该键,将换到下一行的行首输入。就是说,按下该键后,表示输入的当前行结束,以后的输入将另起一行。 (2)或在输入完命令后,按下该键,则表示确认命令并执行。[CapsLock] 大写字母锁定键 在打字键区右边。该键是一个开关键,用来转换字母大小写状态。每按一次该键,键盘右上角标有CapsLock 的指示灯会由不亮变成发亮,或由发亮变成不亮。这时:(1) 如果 CapsLock 指示灯发亮,则

键盘处于大写字母锁定状态: 1) 这时直接按下字母键,则输入为大写 字母;2) 如果按住 [Shif] 键的同时,再按字母键,输入的反而是小写字母。(2) 如果这时CapsLock 指示灯不亮,则大写字母锁定状态被取消。[Shift]换档键 换档键在打字键区共有两个,它们分别在主键盘区(从上往下数,下同)第四排左右两边对称的位置上。 (1)对于符号键(键面上标有两个符号的键,例如:等,这些键也 称为上下档键或双字符键)来说,直接按下这些键时,所输入的是该 键键面下半部所标的那个符号(称为下档键); 如果按住 [Shift] 键同时再按下双字符键,则输入为键面上半 部所标的那个符号(称为上档键)。如: [Shift]+=% (2)对于字母键而言:当键盘右上角标有 CapsLock 的指示灯不亮时,按住 [Shift] 键的同时再按字母键,输入的是大写字母。例如:CapsLock 指示灯不亮时,按 [Shift]+S键会显示大写字母S [ ←BackSpace]退格删除键 在打字键区的右上角。每按一次该键,将删除当前光标位置的 前一个字符。 [Ctrl]控制键 在打字键区第五行,左右两边各一个。该键必须和其它键配合 才能实现各种功能,这些功能是在操作系统或其他应用软件中进行设定的。例如: 文案大全

C++记事本课程设计

课程设计 本科生通用 题目:编程类课程设计 设计项目:记事本程序设计 专业班级: 学号: 姓名: 成绩:导师签字: 2014 年12月11日

任务书 设计题目: 记事本程序设计 要求: 设计一个软件记事本,能够记录用户输入的信息,并能实现保存输入信息,查看备忘信息。该记事本具有输入、修改、删除、查看信息的功能。具有日历功能,可以根据时间,标记备忘信息,方便用户使用。 日程安排: 12月8日:确定设计题目,查阅相关资料 12月9日:根据功能设计整体方案,划分系统各个模块功能 12月10日:建立工程,编写程序实现设计方案的功能 12月11日:调试程序,完善界面设计,书写设计报告

目录 第一章概述 (3) 1.1 设计目的 (3) 1.2 设计背景 (3) 第二章设计过程 (4) 2.1 设计框图 (4) 2.2 设计步骤 (4) 2.2.1 建立工程 (4) 2.2.2 向对话框添加控件 (4) 2.2.3 添加变量 (5) 2.2.4 编程 (5) 2.2.5 调试运行 (5) 设计结论 (7) 参考文献 (7) 附件(程序) (8)

第一章概述 1.1设计目的 使学生熟悉VC++6.0编译环境,了解面向对象的编程策略。 深入了解和掌握MFC原理与方法。 提升学生的编程技巧及编程能力。 以实际问题为切入点,锻炼学生运用VC++编程解决实际问题的能力。 培养学生的设计创新意识。 1.2设计背景 1.2.1 软件记事本简介 记事本是一个很有用的程序,主要操作包括对文件的储存,修改等,有编辑功能:包括剪贴、复制等,有对字体修改等。记事本可以提醒用户一些重要的事项,可以方便用户的生活。 1.2.2 VC++ 6.0简介 Visual C++6.0由Microsoft开发, 它不仅是一个VC++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Microsoft的主力软件产品。Visual C++是一个功能强大的可视化软件开发工具。 1.2.3 C++语言简介 C++是在C语言的基础上开发的一种集面向对象编程、泛型编程和过程化编程于一体的编程语言。应用较为广泛,是一种静态数据类型检查的,支持多重编程的通用程序设计语言。它支持过程化程序设计,数据抽象,面向对象设计,制作图标等多种程序设计风格。

制作记事本(全)

记事本实验 本实验介绍如何使用Visual C# 2008设计一个Windows应用程序——记事本,通过本章的学习,可以进一步掌握MenuStrip(菜单)、ToolStrip(工具栏)、RichTextBox(高级文本框)和StatusStrip(状态栏控件)等控件的使用,以及如何使用CommonDialog(公共对话框)实现对文本的存取、格式设置等操作。 1.1 记事本简介 记事本是一种常用的软件,在微软的Windows中,自带了一个记事本软件,Windows XP 下的记事本软件如图1-1所示。 图1-1 Windows自带的记事本 本章介绍的记事本,实现了Windows自带的记事本的部分功能外,并且还可以任意更改字体的字体类型、大小和颜色,并在状态栏中显示时间。为了方便用户的操作,还在程序的窗体上放置了一个工具栏。 本章介绍的记事本程序具有文件的新建、打开、保存功能;文字的复制、粘贴、删除功能;字体类型、格式的设置功能;查看日期时间等功能,并且用户可以根据需要显示或者隐藏工具栏和状态栏。 接下来将详细的介绍记事本程序的设计与实现的步骤和方法。 1.2 记事本界面设计 新建一个Windows应用程序,并命名为“Notepad”。本节介绍记事本程序的界面设计以及界面上各控件的属性设置。

新建好“Notepad”项目后,定位到记事本程序的窗体设计器窗口,然后依次在窗体上放置以下控件(各1个): (1)MenuStrip(菜单控件)。 (2)ToolStrip(工具栏控件)。 (3)RichTextBox(多格式文本框控件)。 (4)StatusStrip(状态栏控件)。 (5)OpenFileDialog(打开对话框)。 (6)SaveFileDialog(保存对话框)。 (7)FontDialog(字体对话框)。 (8)Timer(计时器控件)。 最终的用户界面如图1-2所示(设置好属性后),其中MenuStrip控件、ToolStrip控件、StatusStrip控件、OpenFileDialog对话框、SaveFileDialog对话框、FontDialog对话框和Timer 控件显示在窗体设计器下方的组件板上。 图1-2 记事本用户界面

日历记事本程序代码

运行界面:

// CalendarWindow类 package others; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*; import java.awt.SplashScreen; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener { Calendar calendar; int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad; JTextField showYear,showMonth; JTextField showDay[]; CalendarImage calendarImage; String picturename;//图像名称; String getPicture_address; Alarm alarm; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord,changeBackground; File dir; Color backColor=Color.white; public CalendarWindow() { dir= new File("./dailyRecord"); dir.mkdir(); showDay = new JTextField[42]; for(int i=0;i

用Java程序编写一个记事本程序的设计报告

用Java程序编写一个记事本程序的 设计报告 学习中心(点):泾阳学习中心 专业:计算机科学与技术 层次:专升本 姓名:李永固 批次: 112

目录 一、设计分析 (1) 二、程序结构 (1) 三、各模块的功能及程序说明 (2) 1、类设计 (2) 2、主要功能代码实现 (4) 四、源程序 (9) 五、操作方法 (20) 六、试验结果 (20) 七、设计体会 (22)

用Java程序编写一个记事本程序的设计报告 一、设计要求 1.用图形用户界面实现。 2.能实现编辑、保存、另存为、查找替换等功能。 二、程序结构 流程图: 图1基本流程图

本Java文本编辑器功能设计如下: 图2基本功能图 三、各模块的功能及程序说明 1、类设计 (1)类MiniText ,包括initTextPane方法初始化面板,initMenu()方法初始化菜单,initAboutDialog()方法初始化关于对话框,initToolBar()方法初始化工具栏,initRightKey()方法初始化右键设置,等方法。类成员如下:

(2)类Loading (实现登陆)类成员如下:

(3)类runtime (实现时间同步) 类成员如下: (4)类MainFunction (包含主函数) 类成员如下: 2、主要功能代码实现 (1)登陆界面: class Loading extends JWindow implements Runnable { Thread dluThread=null; private JProgressBar progress; public Loading() { setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));//设置光标为等待状态JPanel dlu = new JPanel(new BorderLayout()); URL url = getClass().getResource("/images/loading.jpg"); if(url != null){ dlu.add(new JButton(new ImageIcon(url)), BorderLayout.CENTER); } progress = new JProgressBar(1,100); progress.setStringPainted(true); progress.setBorderPainted(true); progress.setBackground(Color.white); progress.setForeground(Color.green); dlu.add(progress,BorderLayout.SOUTH); setContentPane(dlu); //设置窗口属性为登陆面板属性 Dimension screen = getToolkit().getScreenSize(); pack(); //显示登陆界面 setLocation(screen.width/4,screen.height/4); //设置登陆界面始终在屏幕中间显示 } public void start(){ // this.toFront(); dluThread=new Thread(this); dluThread.start(); } public void run(){ show();

JAVA课程设计-编写一个记事本程序

Java语言程序设计B报告 题目:编写一个记事本程序 一.要求:用图形用户界面实现。能实现编辑、保存、另存为、查找替换等功能。提示:使用文件输入输出流。 二.课程设计思路。 设计两个类,一个记事本的类(JSB),具有程序的要求和功能再创建一个课设的主类(KESHE),在主类中创建一个JSB类的对象,就可以直接在编译器中运行程序。 在主界面中设计一个Frame容器,并在其中加入一个下拉菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。 三.课程设计实现功能结构图。 3.1“文件”菜单。

3.2“编辑”菜单。

四.记事本实现功能代码实现。 4.1.界面设计。 主要代码: f=new Frame(s); p1=new TextArea(""); f.setSize(400,600); f.setBackground(Color.white); f.setVisible(true); menubar=new MenuBar(); menu1=new Menu("文件"); menu2=new Menu("编辑"); item1=new MenuItem("新建"); item2=new MenuItem("打开"); item3=new MenuItem("保存"); item4=new MenuItem("另存为"); item5=new MenuItem("退出"); item6=new MenuItem("全选"); item7=new MenuItem("复制"); item8=new MenuItem("剪切"); item9=new MenuItem("粘贴"); menu1.add(item1); menu1.add(item2);

相关文档
相关文档 最新文档