d选择颜色对话框.

import core.sys.windows.windows;
pragma(lib, "comdlg32");

uint getColor(uint defaultColor) {
	COLORREF[16] acrCustClr; // array of custom colors

	CHOOSECOLOR cc;
	cc.lStructSize = cc.sizeof;
	cc.hwndOwner = null; // owner window, allowed to be NULL if no owner
	cc.lpCustColors = cast(LPDWORD) acrCustClr;
	cc.rgbResult = defaultColor;
	cc.Flags = CC_FULLOPEN | CC_RGBINIT;

	if (ChooseColor(&cc)) {
		return cc.rgbResult;
	} else {
		return 0; // user clicked cancel
	}
}

import std;

void main() {
    const color = getColor(0xFF0000FF); // default color red
    const red = color & 0xFF;
    const green = (color >> 8) & 0xFF;
    const blue = (color >> 16) & 0xFF;
    writeln("Selected color is (", red, ",", green, ",", blue, ")");
}

能够行的.
静态导入,是使用全名的导入.

//’.x’表示模块级全局x
//模块有静态构造函数,析构函数,在线程开始前后执行
//共享静态只执行一次,且在最前执行
//只要两个模块不都有静态构造/析构函数,则可以循环依赖
//委托就是对象的函数.

posted @ 2020-01-10 09:40  zjh6  阅读(21)  评论(0)    收藏  举报  来源