728x90

프로그램 97

submit 을 할 때 target 이 두번 호출이 되는 현상 해결방법

자바스크립트에서 예전에 문의을 많이 받았었고, 검색을 좀 하면 나오는 내용이지만.. submit 을 할 때 target 페이지가 두 번 호출되는 문제에 대해 설명하고자 합니다. 이 부분의 원인은 웹페이지를 만들 때 submit 속성을 가진 버튼이나 이미지를 사용하지 않고, 일반 버튼이나 이미지를 onclick, href 을 통해서 함수를 호출하게 되고 그 안에서 onsubmit 을 하게 되면. onsubmit 이벤트가 한번 더 발생하게 됩니다. 그래서 저같은 경우는 다양한 개발과 유지관리가 용이해야 하기 때문에 submit 속성을 가진 버튼은 사용하지 않고, onclick을 통해서 처리를 합니다. 그러니 당연히 onsubmit 이벤트가 한번 더 발생을 하게 됩니다. 이 이부분을 해결하는 법은 form 태..

원하는 alert창 만들기

오늘은 자바스크립트에서 alert 을 많이 사용하는데 고정적인 형태가 아니라 원하는 형식의 alert 창을 만드는 법을 설명하고자 합니다. 보통 modal 을 사용하면 되지만 또 다른 html 파일이 필요하고, 간단히 구현하려 하기는 거추장스러운 부분이 있어 아래 소스를 소개하고자 합니다. 브라우저 버젼에 따라 안되는 경우가 있을 수 있습니다. 그때는 구글링으로~~ * 소스코드 var popMsg = window.createPopup(); // 인자야 임의로 알아서 하시면 됩니다. // x, y, width, height, : 시작, 크기~ // msg : 메세지 // flag : 닫기 클릭 시의 포커스 function showAlert(x, y, width, height, msg, flag) { var..

WM_COPYDATA 사용하기 ( OnCopyData )

오늘은 C++에서 옛날에는 사용을 많이 하였던 WM_COPYDATA 의 사용법에 대해 설명하고자 합니다. 작업은 6.0 기준입니다. WM_COPYDATA 는 서로 다른 응용프로그램 간에 데이터 통신을 하기 위해서 사용을 합니다. 단, win7 이상 같은 경우는 관리자권한으로 실행이 되어야 하고, 또는 사용자계정컨트롤이 사용안함으로 되어 있어야 통신이 가능합니다. 권한이 없으면 전송 시 권한에 의해 전달 또는 수신이 되지 않습니다. 통상 일반 개인 유저를 상대로 하는 PC에서는 사용하지 않으며.. 솔류션기반 또는 전문적으로 사용하는 PC에서 사용을 합니다. 예전에는 정말 많이 사용하던 방식 중에 하나였습니다. * 소스코드 (전송) // int parm_message_type : 메세지ID // char *..

프로그램/C++ 2021.01.10

팝창을 여는 2가지 방식 (get, post)

자바스크립트에서 팝창을 여는 방법은 잘 알려진 방식인데 초보자 분들은 get 방식을 통해서만 전달이 되는 것으로 아시는 분들이 좀 계시더라구요,. 그래서 여기서 post 방식으로도 팝창을 열수 있는데 이 부분을 어떻게 하는지를 설명하고자 합니다. 그리고 제가 사용하는 팝창 여는 함수도 설명하고자 합니다. 마우래도 체계화가 좀 되어 있으면 함수 내의 부분이나 인자값을 좀 수정하면 다양하게 사용할 수 있기 때문입니다. 우선 일반적인 방식이 GET 방식을 설명합니다. * 소스코드 (GET) function GetOpen() { var f = document.write_form; // 이곳에서 팝창의 스타일을 지정한다. var is_status = "toolbar=no,directories=no,scrollba..

Sleep 을 대신할 수 있는 Wait 함수

오늘은 Sleep 함수에 대해 얘기하고자 합니다. 일반적인 개발언어가 다 그렇듯이 sleep 함수는 단점이 해당 프로그램이 lock이 걸린다는 점입니다. 즉, 화면이 멍해지죠.. 그래서 프로세스 부분을 Thread 로 구현해서 프로그램 안에 또 다른 프로그램이 문한루프나 sleep 을 통해 프로세스를 처리를 하고, 화면 상의 프로그램은 마우스 키보드 이벤트를 받아 처리를 하게끔 합니다. 근데 초보 프로그래머나 thread 을 사용하기에는 과도한(?) 프로그램이나... 또는 thread 안에서 큰 부하가 없이 sleep 을 사용해야 될 때가 있는데.. 이런 때 아래 함수를 이용하시면 편리합니다. 핵심은 sleep(1) 과 PeekMessage, TranslateMessage, DispatchMessage ..

프로그램/C++ 2021.01.10

VS2010 인텔리센스 에러 /MD _AFXDLL

출처 ㅣ http://blog.naver.com/PostView.nhn?blogId=crazywlsgur&logNo=70100145542 에러내용 1 IntelliSense: #error directive: Please use the /MD switch for _AFXDLL builds c:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxver_.h 81 코드를 보면.. #if defined(_AFXDLL) && !defined(_DLL) #error Please use the /MD switch for _AFXDLL builds #endif 정상인데 비 정상이라고 우기는 경우이다. 이것은 1. Right-click the P..

프로그램/C++ 2021.01.10

미리 컴파일된 헤더 사용시 폴더위치가 다른 곳에서 에러 안나고 쓰는 방법

출처 ㅣ http://m.blog.naver.com/greenbox2000/140193793540 미리 컴파일된 헤더 사용시 폴더위치가 다른 곳에서 에러 안나고 쓰는 방법 MFC로 개발하면서 stdafx.h을 사용하는데 클래스를 종류별로 폴더위치를 다르게해서 관리하는데 아래와 같이 빨간 밑줄이 가면서 stdafx.h파일을 찾을 수 없다고 나온다. 그러나 빌드는 잘 되고 실행도 잘된다. 그냥 사용하면되긴 하나 stdafx.h에서 include 한 라이브러리의 함수들의 인자들이 잘 사용된건지 파라미터는 어떤게 들어가는지를 볼 수가 없었다. math.h를 stdafx.h에 추가해놓고 사용하게되면 위와 같은 현상이 있다. 이 문제는 간단히 해결할 수 있었다. 아래와 같이 .\를 추가해주기만 하면 끝~~~ 이거때..

프로그램/C++ 2021.01.10

[MFC] 유니코드 멀티바이트 UTF-8 문자열 인코딩 변환 모음

출처 : http://yeobi27.tistory.com/entry/MFC-%EC%9C%A0%EB%8B%88%EC%BD%94%EB%93%9C-%EB%A9%80%ED%8B%B0%EB%B0%94%EC%9D%B4%ED%8A%B8-UTF8-%EB%AC%B8%EC%9E%90%EC%97%B4-%EC%9D%B8%EC%BD%94%EB%94%A9-%EB%B3%80%ED%99%98-%EB%AA%A8%EC%9D%8C [MFC] 유니코드 멀티바이트 UTF-8 문자열 인코딩 변환 모음 유니코드 -> 멀티바이트 1 2 3 4 5 wchar_t strUnicode[256] = {0,}; char strMultibyte[256] = {0,}; wcscpy_s(strUnicode,256,L"유니코드"); int len = WideCh..

프로그램/C++ 2021.01.10

VC++에서 쓸만한 그리도 추천

VC++에서 쓸만한 그리도 추천합니다. codeproject 에 등록된 코드인데 괜찮네요.. MS에서 제공하는 MSGrid 는 안되는게 많아서 불편한데 이건 괜찮습니다. 링크 https://www.codeproject.com/Articles/20187/The-Ultimate-Grid-Beginner-s-Guide The Ultimate Grid Beginner's Guide The Ultimate Toolbox, 25 Aug 2007 CPOL 4.33 (6 votes) Getting started with the Ultimate Grid Is your email address OK? You are signed up for our newsletters but your email address is eith..

프로그램/C++ 2021.01.09

MFC - MySQL 연동하는 법 정리

출처 : http://gandus.tistory.com/465 연동시에 필요한 함수들 정리 mysql_init(&mysql); // 연동의 초기화를 담당한다. mysql_real_connect(&mysql, DB_ADDRESS, DB_ID, DB_PASS, DB_NAME ,3306,0,0) // 여기서 부터 실질적으로 연동을 한다. mysql_query(&mysql,"set names euckr"); // 쿼리를 보낸다. m_res = mysql_store_result(&mysql) // 결과를 저장한다. row = mysql_fetch_row(m_res) // row 에 값을 담아온다. mysql_fetch_array() // row 에 row[id] 이런식으로 인덱스를 이용할 수 있다. mysql_n..

프로그램/C++ 2021.01.09
728x90
반응형