- 博客(41)
- 收藏
- 关注
转载 PlantUML(程序员绘制流程图专用工具)
什么是 PlantUMLPlantUML 是一个画图脚本语言,用它可以快速地画出:时序图流程图用例图状态图组件图简单地讲,我们使用 visio 画图时需要一个一个图去画,但使用 PlantUML 只需要用文字表达出图的内容,然后就可以直接生成图片。看一个最简单的例子:Bob -> Alice : Hello, how are youAlice -> Bob : Fine, t
2017-04-07 16:39:22 19283 2
原创 Java 动态代理
Spring主要有两大思想,一个是IoC,另一个就是AOP。对于IoC,是依赖注入;Spring的核心AOP,其原理就是java的动态代理机制。AOP的拦截功能是由java中的动态代理来实现的。本质就是在目标类的基础上增加切面逻辑,生成增强的目标类(该切面逻辑或者在目标类函数执行之前,或者目标类函数执行之后,或者在目标类函数抛出异常时候执行。不同的切入时机对应不同的Intercepto
2017-04-05 20:03:14 284
原创 Java 动态生成二进制字节码
Java动态代理过程中,会动态生成二进制字节码(只在内存中),该生成过程究竟是怎样的,我来一探究竟。class字节码文件是根据JVM虚拟机规范中规定的字节码组织规则生成的。1、类加载器a.定义一个 Programmer类: public class Programmer { public void code() {
2017-04-05 15:34:21 1967
原创 Java注解
1、 注解的意义假如你想为应用设置很多的常量或参数,这种情况下,XML是一个很好的选择,因为它不会同特定的代码相连。如果你想把某个方法声明为服务,那么使用Annotation会更好一些,因为这种情况下需要注解和方法紧密耦合起来,开发人员也必须认识到这点。Annotation是代码里的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用Annotation,开发人员
2017-04-01 21:11:18 259
原创 Gradle sync failed: Gradle DSL method not found: 'android()'
解决方案:删掉build.gradle(project)中的android { compileSdkVersion 23 buildToolsVersion 19.0.1;}然后重启,进入之后,按照提示,重新下载build-tools。
2017-03-27 14:19:58 277
原创 Android 博客精华收藏
Fragment:http://blog.csdn.net/lmj623565791/article/details/42628537
2016-09-21 20:39:05 276
转载 Android事件分发机制
ViewGroup的分发机制: public boolean dispatchTouchEvent(MotionEvent ev) { 调用onInterceptTouchEvent检查是否拦截事件 if(没有拦截){ 在ViewGroup中遍历查找目前是点击了哪个子视图 if(
2016-08-27 17:58:23 391
原创 使用beyond compare比较文件和文件夹
在资源文件中只有xhdpi文件夹中的资源是完整的,现在要求把hdpi, mdpi, xxhdpi, xxxhdpi中的资料完善。公共P盘中有所有的资源,但并不是所有的资源都会使用,所以利用beyond compare比较P盘中的hdpi文件夹中的文件名,与程序中的xhdpi文件夹相同的文件名,将其拷贝到程序中的hdpi文件夹中。
2016-08-24 19:38:29 510
原创 Android 绘制rotate控件/图像
参数degree是手机旋转的角度,通过系统方法可得到;animation是否需要动画。该View作为一个控件使用,需要在程序中通过调用setOrientation()方法,来使其产生作用。 public class RotatelView extends View { private static final int ANIMATION_SPEED = 270;
2016-08-16 19:47:01 306
原创 Gradle sync failed: Gradle DSL method not found: 'android()'
解决方案:删掉build.gradle(project)中的android { compileSdkVersion 23 buildToolsVersion 19.0.1;}然后重启,进入之后,按照提示,重新下载build-tools。
2016-04-20 16:52:33 1486
原创 MyMFC(10-11)绘图控制和保存 SettingDlg
// SettingDlg.cpp : 实现文件//#include "stdafx.h"#include "MyMFC4.h"#include "SettingDlg.h"#include "afxdialogex.h"// SettingDlg 对话框IMPLEMENT_DYNAMIC(SettingDlg, CDialog)SettingDlg::SettingDl
2014-09-12 17:00:07 508
原创 MyMFC(10-11)绘图控制和保存 CMyMFC4View
// MyMFC4View.cpp : CMyMFC4View 类的实现//#include "stdafx.h"// SHARED_HANDLERS 可以在实现预览、缩略图和搜索筛选器句柄的// ATL 项目中进行定义,并允许与该项目共享文档代码。#ifndef SHARED_HANDLERS#include "MyMFC4.h"#endif#include "MyMFC4D
2014-09-12 16:58:49 537
原创 MyMFC(10-11)绘图控制和保存 CGraph
#include "stdafx.h"#include "Graph.h"CGraph::CGraph(){ }//定义这个类是最原始的,没有继承。它是用来保存所绘制线的类型、起点、终点CGraph::CGraph(UINT m_nDrawType, CPoint m_ptOrigin, CPoint m_ptEnd){ this->m_nDrawType = m_nDraw
2014-09-12 16:54:23 661
原创 MyMFC(8)逃跑按钮 CNewButton
#include "stdafx.h"#include "NewButton.h"CNewButton::CNewButton(): m_pBtn(NULL){}CNewButton::~CNewButton(){}BEGIN_MESSAGE_MAP(CNewButton, CButton) ON_WM_MOUSEMOVE()END_MESSAGE_MAP()/*
2014-09-12 16:53:28 857
原创 MyMFC(8)逃跑按钮 CMyMFC3DialogDlg
// MyMFC3-DialogDlg.cpp : 实现文件//#include "stdafx.h"#include "MyMFC3-Dialog.h"#include "MyMFC3-DialogDlg.h"#include "afxdialogex.h"#ifdef _DEBUG#define new DEBUG_NEW#endif// 用于应用程序“关
2014-09-12 16:52:10 418
原创 MyMFC(7-9)对话框 CTestDlg
// TestDlg.cpp : 实现文件//#include "stdafx.h"#include "MyMFC2-Dialog.h"#include "TestDlg.h"#include "afxdialogex.h"#include // CTestDlg 对话框IMPLEMENT_DYNAMIC(CTestDlg, CDialog)CTestDlg::CTes
2014-09-12 16:48:57 1294
原创 MyMFC(7-9)对话框 CPropSheet
#include "stdafx.h"#include "PropSheet.h"CPropSheet::CPropSheet(){}CPropSheet::CPropSheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage):CPropertySheet(nIDCaption, pParentWnd, iSelectPa
2014-09-12 16:47:53 861
原创 MyMFC(7-9)对话框 CProp2
// Prop2.cpp : 实现文件//#include "stdafx.h"#include "MyMFC2-Dialog.h"#include "Prop2.h"#include "afxdialogex.h"// CProp2 对话框IMPLEMENT_DYNAMIC(CProp2, CPropertyPage)CProp2::CProp2() : CPrope
2014-09-12 16:44:53 446
原创 MyMFC(7-9)对话框 CProp3
// Prop3.cpp : 实现文件//#include "stdafx.h"#include "MyMFC2-Dialog.h"#include "Prop3.h"#include "afxdialogex.h"// CProp3 对话框IMPLEMENT_DYNAMIC(CProp3, CPropertyPage)CProp3::CProp3() : CPrope
2014-09-12 16:44:22 355
原创 MyMFC(7-9)对话框 CProp1
// Prop1.cpp : 实现文件//#include "stdafx.h"#include "MyMFC2-Dialog.h"#include "Prop1.h"#include "afxdialogex.h"// CProp1 对话框IMPLEMENT_DYNAMIC(CProp1, CPropertyPage)CProp1::CProp1() : CPrope
2014-09-12 16:42:10 526
原创 MyMFC(7-9)对话框 CMainFrame
// MainFrm.cpp : CMainFrame 类的实现//#include "stdafx.h"#include "MyMFC2-Dialog.h"#include "MainFrm.h"#include "Splash.h"#ifdef _DEBUG#define new DEBUG_NEW#endif// CMainFrameIMPLEMENT_DYNC
2014-09-12 16:38:35 1092
原创 MyMFC(7-9)对话框 CMyMFC2DialogView
// MyMFC2-DialogView.cpp : CMyMFC2DialogView 类的实现//#include "stdafx.h"// SHARED_HANDLERS 可以在实现预览、缩略图和搜索筛选器句柄的// ATL 项目中进行定义,并允许与该项目共享文档代码。#ifndef SHARED_HANDLERS#include "MyMFC2-Dialog.h"#endi
2014-09-12 16:38:26 534
原创 MyMFC(2-6)菜单 CMyMFCView
// MyMFCView.cpp : CMyMFCView 类的实现//#include "stdafx.h"// SHARED_HANDLERS 可以在实现预览、缩略图和搜索筛选器句柄的// ATL 项目中进行定义,并允许与该项目共享文档代码。#ifndef SHARED_HANDLERS#include "MyMFC.h"#endif#include "MyMFCDoc.h
2014-09-12 16:33:45 721
原创 MyMFC(2-6)菜单 CMyMFCApp
// MyMFC.cpp : 定义应用程序的类行为。//#include "stdafx.h"#include "afxwinappex.h"#include "afxdialogex.h"#include "MyMFC.h"#include "MainFrm.h"#include "MyMFCDoc.h"#include "MyMFCView.h"#ifdef _DEBU
2014-09-12 16:31:45 578
原创 MyMFC(2-6)菜单 CMainFrame
// This is a part of the Microsoft Foundation Classes C++ library.// Copyright (C) Microsoft Corporation// All rights reserved.//// This source code is only intended as a supplement to the// Micr
2014-09-12 16:23:31 1348
原创 MyAPI的程序详解(孙鑫—VC++深入详解)
#include #include //LRESULP的本质是long型//CALLBACK是_stdcall类型 //__stdcall表示//1.参数从右向左压入堆栈//2.函数被调用者修改堆栈//3.函数名(在编译器这个层次)自动加前导的下划线,后面紧跟一个@符号,其后紧跟着参数的尺寸//在win32应用程序里, 宏APIENTRY,WINAPI,都表示_stdcall,
2014-08-21 13:11:15 1094
原创 一个在多台服务器上查询日志量的脚本
#!/bin/shfile=$1start=$2end=$3while [ "$start" -le "$end" ] ; dopssh -h $file -t -4 -p 10 -i "cat /home/log/$start/a.log" > text.txtstart=$[$start+1]doneecho cal: ; cat text.txt | grep -c cal
2014-08-20 15:14:26 1266
转载 无法解析的外部符号 _main
在编程时经常遇到“无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用”这样的错误,最近看了一些这方面的书籍,现将解决方案大概叙述一下:连接程序在负责连接可执行程序时,选择相应的c/c++运行时启动函数。如果设定了/subsystem:windows连接程序开关,那么连接程序会试图寻找WinMain或wWinMain函数。如果连个函数都不存在,那么就
2014-08-19 14:39:39 11445
原创 const char *与LPCWSTR 不兼容
不能从const char *转换为LPCWSTR在VC 6.0中编译成功的项目在VS2005 vs2005、vs2008、vs2010中常会出现类型错误。经常出现的错误是:不能从const char *转换为LPCWSTR如使用MessageBox(hwnd,"TEST",NULL,0)就会报错,如果使用强制转换(LPCWSTR)"TEST",虽然能够通过,但是编码会出错
2014-08-19 14:31:25 10120 1
原创 我的Linux学习之旅
一个多月的时间学习Linux的基础知识,看得是鸟哥的私房菜,看了有两遍吧。现在总结一下平时经常用到的知识。date:显示时间,更多的是用来产生一些时间格式的文件夹,如:生成日志的文件夹。bc:计算器,quit退出,一般用不到。ctrl+alt+F1~F6可切换不同的文字界面,一般用于:如果一个界面死掉了,可以再切换另一个界面将其杀死,而不用重启计算机,很方便的。ctrl+alt
2014-08-18 18:12:17 468
原创 Linux中的一些小技巧
1)ubuntu把默认的bash替换成了dash,所以写shell脚本时会有问题。可以用 sudo dpkg-reconfigure dash 执行,然后选择”否“。2)输入 sudo passwd root 可以更改变换root身份的密码。3)apt-get dist-upgrade 更新所有软件apt-get update 更新资源apt-get dist-upgrade
2014-08-18 18:10:51 403
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人