读书人

多流最短路径以图形输出

发布时间: 2013-09-05 16:02:07 作者: rapoo

多源最短路径以图形输出
原题是一个城市间的交通图,求多源最短路径的,这个代码我用Floyed算法写出来了,只是最后要求是“求从某城市到其它城市最短乘车时间和乘车路线,要求结果以图形方式输出在屏幕上”,楼主不会用图形的方式输出,有没有相关的书籍或者知识(给出文章名) 图形 ,Floyed算法,图形输出
[解决办法]
仅供参考

#include <windows.h>
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) {
PAINTSTRUCT ps;
HDC hdc;
HFONT hfont,ohfont;
RECT r;
COLORREF oc;

switch(message) {
case WM_CLOSE:
PostQuitMessage(0);
break;
case WM_PAINT:
BeginPaint(hWnd, &ps);
hdc = ps.hdc; // the device context to draw in
GetClientRect(hWnd, &r); // Obtain the window's client rectangle
hfont = CreateFont(240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "华文楷体");
ohfont=SelectObject(hdc,hfont);
oc=SetTextColor(hdc,0x00C080FF);
SetBkMode(hdc, TRANSPARENT);
TextOut(hdc,r.left+r.right/2-360, r.top+r.bottom/2-120,"图形方式",8);
SelectObject(hdc,ohfont);
SetTextColor(hdc,oc);
DeleteObject(hfont);
EndPaint(hWnd, &ps);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;


}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
MSG msg = {0};
WNDCLASS wc = {0};
HBRUSH hbrh;
hbrh=CreateSolidBrush(0x00000000);
wc.lpfnWndProc = WndProc;
wc.hInstance = hInstance;
wc.hbrBackground = hbrh;
wc.lpszClassName = "minwindowsapp";
if( FAILED(RegisterClass(&wc)) ) return 1;

if(FAILED(CreateWindow(wc.lpszClassName,
"Minimal Windows Application",
WS_POPUP
[解决办法]
WS_VISIBLE,
0,
0,
GetSystemMetrics(SM_CXSCREEN),
GetSystemMetrics(SM_CYSCREEN),
0,
0,
hInstance,
NULL)))
return 2;

while( GetMessage( &msg, NULL, 0, 0 ) > 0 ) {
DispatchMessage( &msg );


}
DeleteObject(hbrh);
return 0;
}

读书人网 >C++

热点推荐