일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- COMMIT
- hackerrank
- FastReport
- MSSQL
- 백준
- rank
- Visual Studio
- blog
- get_object_or_404
- delphi 10.3
- GIT
- python3
- Push
- PyCharm
- dbadvgrid
- declare
- TMS
- 델파이
- python 3.7
- advColumnGrid
- pyhcarm
- c#
- Django
- pythonanywhere
- queryset
- anaconda3
- templates
- github
- Delphi
- HTML
- Today
- Total
목록분류 전체보기 (61)
DevHyun

- FastReport5를 사용하여 위와 같은 보고서 출력물 만들기 1. FrxPreview 컴포넌트를 사용하여 출력전에, 미리 프로그램 화면에 뿌려서 출력물을 확인 할 수 있도록 설계 2. Delphi에서 다음과 같이 써주면 frxReport1의 내용이 frxPreview1에 뿌려짐frxReport1.PrepareReport(True);3. report 폼에서 Report>dataset에서 해당 폼의 dataset 선택 4. report 폼에 MasterData 추가 및 dataset 연결 5. GroupHeader 추가: 쿼리 결과의 ROW가 여러개일 경우 원하는 FIELD명으로 GROUPING 해주는 역할: Drill-Down의 경우 GroupHeader까지 보여주고, DetailData나 Grou..
// Row clear dataGridView1.Rows.Clear(); // 컬럼 갯수 지정 this.dataGridView1.ColumnCount = 4; // 컬럼 너비 지정 this.dataGridView1.Columns[0].Width = 20; // 이미지 컬럼 추가 DataGridViewImageColumn iconColumn = new DataGridViewImageColumn(); dataGridView1.Columns.Insert(3, iconColumn); // 리소스 파일의 test_img 참조 Image tempImg = Properties.Resources.test_img; // 지정한 컬럼 갯수 만큼 해당 Row에 add dataGridView1.Rows.Add(value, v..
// dictionary 선언 // CurrentCultureIgnoreCase : 대소문자 구분무시 static Dictionary TestDic= new Dictionary(StringComparer.CurrentCultureIgnoreCase); // dictionary에 직접 key, value 값 추가 TestDic.Add(Key, Value); private void form1_MouseDown(object sender, MouseEventArgs e) { // 기존에 하드코딩했던 dictionary 복제용 변수 var dicOrg = new Dictionary(StringComparer.CurrentCultureIgnoreCase); // 기존 dictionary에서 내부 검색 dicOrg ..
public partial class Form1: Form { public Form1 ( ) { } // form2에서 참조하기 위한 public 메소드 생성 public void testMethod(){ } } public partial class Form2: Form { public Form2 ( Form1, form1 ) { // form1 메소드 참조용 변수 f1 선언 var f1 = Application.OpenForms.OfType().Single(); f1. testMethod(); } }
private Point point = new Point(); // mousedown 이벤트 private void panel2_MouseDown(object sender, MouseEventArgs e) { // 클릭후 드래그로 폼 이동시 사용 point = new Point(e.X, e.Y); } // mousemove 이벤트 // mouseup 이벤트에서 사용시 버벅거림 현상이 생김 private void panel2_MouseMove(object sender, MouseEventArgs e) { // 클릭후 드래그로 폼 이동시 사용 if ((e.Button & MouseButtons.Left) == MouseButtons.Left) { this.Location = new Point(this.Lef..
// filePath 변수생성 및 초기값 지정 const string filePath = @"C:\"; // filePath에 만들고자 하는 파일이 없을때 if (File.Exists(filePath) == false) { try { // 디렉토리 부터 생성 DirectoryInfo di = new DirectoryInfo(DirPath); if (di.Exists == false) { try { di.Create(); } catch { MessageBox.Show("디렉토리 생성 실패"); } } } catch { //MessageBox.Show(""); }
1. dll 활용 // dll 선언 [DllImport("kernel32.dll")] private static extern uint GetPrivateProfileString(string section, string key, string defaultValue, StringBuilder returnedString, uint size, string filePath); [DllImport("kernel32.dll")] private static extern bool WritePrivateProfileString(string section, string key, string value, string filePath); // 사용 // ini파일 구성 // [section] // key : value stri..
1. kill private static void killps(string processName) { // 프로세스 kill 메소드 Process[] process = Process.GetProcessesByName(processName); Process currentProcess = Process.GetCurrentProcess(); foreach (Process p in process) { if (p.Id != currentProcess.Id) p.Kill(); } } processName은 보통 fom 이름일 경우가 많기 때문에 사용은 아래와 같이 하면 됨. killps(this.Text); 2. sendmessage // dll 참조 선언 [DllImportAttribute("User32.dll"..

[Delphi에서의 thread] 1) thread의 begin ~ end 블록 사이에서 UI를 조작(변경, 수정, 삭제등)할때는 Syncronize를 이용한다. 2) 다른 thread와 동시에 같은 자원(변수, 클래스등)을 공유(동시에 읽거나 쓰는 행위, 포인터를 참조하는 행위)하지 않는다. 3) thread와 유사한 형식인 델파이 기본 타이머의 경우 윈도우 이벤트 방식으로 구현되므로 정확도가 떨어지고(윈도우컨디션에 따라 100~500ms 이하 작동 불규칙) 메인UI(메인쓰레드)가 멈추지 않고 작업 불가능 하다 [Suspend와 Resume] -> Thread를 잠시 멈추고 다시 시작함 -> TThread는 Thread 강제종료 기능을 제공하고 있지 않음 -> Suspend가 호출되는 순간 Thread..
원래 일자별 재고는 쿼리로 입/출고량을 출력하고 프로그램에서 반복문을 통해 구해주는 형식이었는데 이번 기회에 쿼리로 다 조회해 버리자! 라는 생각을 하게됨. '수불현황' 테이블 DATE,IN_QTY,OUT_QTY * 2021-09-01~2021-09-02 '1234' 약품에 대한 일자별 재고 현황 출력 예시 일자 입고 출고 재고량 2021-09-01 5 0 10(이월 재고 5) 2021-09-02 3 2 11 *'1234' 약품의 2021-09-01 이전까지 재고는 5개여서 2021-09-01에 입고 5개 까지 해서 총 재고량은 10개. -- @STOCK 변수 선언 DECLARE @STOCK int -- '1234' 약품의 이월 재고를 SELECT 하면서 @STOCK 변수에 입력 SELECT TOP 1 ..