java最简单的知识之创建一个简单的windows窗口,利用Frame类

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_21376985/article/details/52119183

作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985
QQ986945193 微博:http://weibo.com/mcxiaobing

首先给大家看一下效果。当然,就像我们刚学习写代码,写hello world!
很简单,所以,慢慢从简单开始学习吧。这次介绍Frame的一个简单的用法。java最简单的知识之创建一个简单的windows窗口,利用Frame类

这里写图片描述

下面是源代码:其实很简单:

可以利用eclipse等ide开发工具的,当然用记事本也是可以的。

import java.awt.Color;
import java.awt.Frame;
import java.awt.HeadlessException;
/**
 * 微博:http://weibo.com/mcxiaobing
 * ============================================================================
 * Copyright (c) 2015-2016 QQ986945193 All rights reserved.
 * ----------------------------------------------------------------------------
 * 类名:java最简单的知识之创建一个简单的windows窗口,利用Frame类
 * ----------------------------------------------------------------------------
 * 功能描述:java最简单的知识之创建一个简单的windows窗口,利用Frame类
 * ----------------------------------------------------------------------------
 */
public class Demo extends Frame {

    public Demo() throws HeadlessException {
        super();
        // TODO Auto-generated constructor stub
    }

    public Demo(String title) throws HeadlessException {
        super(title);
        // TODO Auto-generated constructor stub
    }

    public static void main(String[] args) {
        /**
         * 文字标题
         */
        Demo demo = new Demo("这是第一个frame");
        // 背景颜色
        demo.setBackground(Color.BLUE);
        // 大小
        demo.setSize(300, 200);
        // 设置可见。
        demo.setVisible(true);

    }

}
展开阅读全文

简单创建一个窗口,查错?

10-03

下面这个小程序出错的在什么地方呢?rn我把出错信息给发上来@:rn--------------------Configuration: WindowsDemo - Win32 Debug--------------------rnCompiling...rnApidemo.cpprnE:\vvcc\WindowsDemo\Apidemo.cpp(4) : error C2146: syntax error : missing ';' before identifier 'WinMain'rnE:\vvcc\WindowsDemo\Apidemo.cpp(4) : fatal error C1004: unexpected end of file foundrn执行 cl.exe 时出错.rnrn[color=#FF0000]WindowsDemo.exe - 1 error(s), 0 warning(s)[/color]rnrn rn下面是程序:rnrn#include//包含windows.h头文件rnLRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);//窗口函数声明rn/*入口函数 WinMian*/rnint APIENTPY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTRrn lpCmdLine,int nCmdShow)rn WNDCLASS wndclass;//定义窗口类结构变量rn HWND hwnd;//定义窗口句柄rn MSG msg;//定义消息结构变量rn/*定义窗口类的各属性*/rnwndclass.style=CS_HREDRAW|CS_VREDRAW;//改变窗口大小则重画rnwndclass.lpfnWndProc=WndProc;//窗口函数为WndProcrnwndclass.cbClsExtra=0;//窗口类无扩展rnwndclass.cbWndExtra=0;//窗口实例无扩展rnwndclass.hInstance=hInstance;//注册窗口类实例句柄rnwndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);//用箭头光标rnwndclass.hCursor=LoadCursor(NULL,IDC_ARROW);rnwndclass.hbrBackground=(HBRUSH)GetStockobject(WHITE_BRUSH);//背景为白色rnwndclass.lpszMenuName=NULL;//窗口默认无菜单rnwndclass.lpszClassName="window窗口创建";//窗口类名为window窗口创建rn/*注册窗口类*/rnif(! RegisterClass(&wndclass)) return FALSE;rn/*创建窗口*/rnhwnd=CreateWindow("window窗口创建",//窗口类名为window窗口创建rn "windows窗口创建",//窗口名为window窗口创建rn WS_OVERLAPPEDWINDOW,//重叠式窗口rn CW_USEDEFAULT,CW_USEDEFAULT,//左上角屏幕坐标默认值rn CW_USEDEFAULT,CW_USEDEFAULT,//窗口宽度和高度默认值rn NULL,//此窗口无父窗口rn NULL,//此窗口无主菜单rn hInstance,//创建此窗口的实例句柄rn NULL);//此窗口无创建参数rn/*显示并更新窗口*/rnShowWindow(hwnd,nCmdShow);//显示窗口rnUpdateWindow(hwnd);//更新窗口的客户区rn/*消息循环*/rnwhile(GetMessage(&msg,NULL,0,0))rnTranslateMessage(&msg);//键盘消息转换rnDispatchMessage(&msg);//派送消息给窗口函数rnrnreturn msg.wParam;//返回推出值rnrn/*窗口函数*/rnLRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM 45 lparam)rn//根据消息值转相应的消息处理rn switch(message)rn case WM_PAINT://重画窗口客户区消息处理rn HDC hdc;//定义设备描述表句柄rn PAINTSTRUCT ps;//定义绘图信息结构变量rn hdc=BejinPaint(hwnd,&ps);//获取要重的窗口的设备描述表句柄rn TextOut(hdc,10,20,"哈哈,Windows编程创建的窗口!",28); //输出文本rn EndPaint(hwnd,&ps);//结束要重的窗口rn return 0;rn case WM_DESTROY://撤销窗口消息处理rn PostQuitMessage(0);//产生对出程序消息WM_QUITrn return 0;rn rn return DefWindowProc(hwnd,message,wParam,lParam);rnrnrn //其他转默认窗口函数rn 论坛

没有更多推荐了,返回首页