Q&A

  • 파일 삭제 확인 Dialog는 어떻게?
안녕하세요!

윈도우즈 탐색기에서 특정 화일을 선택하고 오른쪽 버튼을 누르면

팝업 메뉴가 나오지요!. 그중에 '삭제' 메뉴를 누르면 '파일 삭제 확인'

이라는 Dialog가 나오는데 이것을 어떻게 구현하지요?

급합니다. 아시는 분 꼭 연락좀 주세요. Please . . .



좋은 하루되세요. ^_^

4  COMMENTS
  • Profile
    이호선 1999.04.29 06:02
    안녕하세요.

    별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

    이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.



    if PrinterSetupDlg.Execute = True then

    begin

    try

    MsWord := CreateOleObject('Word.Basic');

    except

    ShowMessage('MS-Word를 시작할수 없습니다.');

    end;

    MSWord.FileOpen(GFileName);

    MSWord.FilePrint;

    MSWord.FileExit;

    end;



    원인을 알려 주시면 감사하겠습니다.



  • Profile
    김종호 1999.07.12 09:59
    박종성 께서 말씀하시기를...

    > 안녕하세요!

    > 윈도우즈 탐색기에서 특정 화일을 선택하고 오른쪽 버튼을 누르면

    > 팝업 메뉴가 나오지요!. 그중에 '삭제' 메뉴를 누르면 '파일 삭제 확인'

    > 이라는 Dialog가 나오는데 이것을 어떻게 구현하지요?

    > 급합니다. 아시는 분 꼭 연락좀 주세요. Please . . .

    >

    > 좋은 하루되세요. ^_^



    메제지 다이얼로그 박스를 이용하시면 될껍니다.

    예를 들면..



    if MessageDlg('파일을 삭제 하시겠습니까?', mtInformation, [mbYes, mbNo], 0) = mrYes then

    //어쩌구 저쩌구....



    이렇게요~



  • Profile
    이정욱 1999.04.29 21:53
    제가 만든 기본프린터 바꾸는 함수 입니다.

    참고하시구요... 이것은 프린터 이름의 일부만 넣어줘도 됩니다.



    procedure TMainForm.SetDPrinter(PrnStr : String);

    var

    WinIni : TIniFile;

    WinIniFileName : array[0..MAX_PATH] of char;

    s : array[0..64] of char;

    i : integer;

    pDevice : array[0..31] of Char;

    pDevice2 : array[0..31] of Char;

    pDriver : array[0..259] of Char;

    pPort : array[0..259] of Char;

    DeviceMode : THandle;



    begin

    //프린터를 세팅하는 함수.

    for i := 0 to Printer.Printers.Count - 1 do

    If Pos(PrnStr,Printer.Printers[i]) > 0 then Break;



    If (Printer.Printers.Count - 1 < i) then

    begin

    ShowMessage('프린터이름이 없습니다.');

    Exit;

    end;

    If (Printer.PrinterIndex <> i) then

    begin

    printer.PrinterIndex := -1;

    Devicemode:=0;

    printer.getprinter(pdevice2,pDriver,pPort,DeviceMode);



    Printer.PrinterIndex := i;

    Devicemode:=0;

    printer.getprinter(pdevice,pDriver,pPort,DeviceMode);



    If StrPas(pDevice) <> StrPas(pDevice2) then

    begin

    GetWindowsDirectory(WinIniFileName, sizeof(WinIniFileName));

    StrCat(WinIniFileName, 'win.ini');

    WinIni := TIniFile.Create(WinIniFileName);

    try

    WinIni.WriteString('windows',

    'device',

    StrPas(pdevice)+','+StrPas(pDriver)+','+StrPas(pPort));

    finally

    WinIni.Free;

    end; //Try



    StrCopy(S, 'windows');

    SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, LongInt(@S));

    Application.ProcessMessages;

    Delay(1000);

    end;

    end;

    end;





    이호선 wrote:

    > 안녕하세요.

    > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

    > 이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.

    >

    > if PrinterSetupDlg.Execute = True then

    > begin

    > try

    > MsWord := CreateOleObject('Word.Basic');

    > except

    > ShowMessage('MS-Word를 시작할수 없습니다.');

    > end;

    > MSWord.FileOpen(GFileName);

    > MSWord.FilePrint;

    > MSWord.FileExit;

    > end;

    >

    > 원인을 알려 주시면 감사하겠습니다.

    >





  • Profile
    안치봉 1999.04.29 07:10
    이호선 wrote:

    > 안녕하세요.

    > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

    > 이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.

    >

    > if PrinterSetupDlg.Execute = True then

    > begin

    > try

    > MsWord := CreateOleObject('Word.Basic');

    > except

    > ShowMessage('MS-Word를 시작할수 없습니다.');

    > end;

    > MSWord.FileOpen(GFileName);

    > MSWord.FilePrint;

    > MSWord.FileExit;

    > end;

    >

    > 원인을 알려 주시면 감사하겠습니다.

    >



    안녕하세요.



    위소스를 보니... ole 객체자체에서 지원하는 프린트루틴을 사용하는군요..

    그렇다면 아마도 위소스처럼 기본프린터를 변경시켜도 그 내용이 적용되지 않을 가능성이 많습니다. - 참고로 프로그램에서 기본프린터를 바꾸어도 그 프로그램이 종료되면 원래의 값으로 프린터가 설정됩니다.



    확실한건 아닙니다. -.-;;



    • 박종성
    • 1999.07.10 03:07
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 이호선
      1999.04.29 06:02
      안녕하세요. 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도 이전설정된 프린트장치...
    • 김종호
      1999.07.12 09:59
      박종성 께서 말씀하시기를... > 안녕하세요! > 윈도우즈 탐색기에서 특정 화일을 선택하고 오른쪽 버튼을...
    • 이정욱
      1999.04.29 21:53
      제가 만든 기본프린터 바꾸는 함수 입니다. 참고하시구요... 이것은 프린터 이름의 일부만 넣어줘도 됩니...
    • 안치봉
      1999.04.29 07:10
      이호선 wrote: > 안녕하세요. > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도 > ...
    • 이정욱
      1999.04.29 05:30
      인쇄루틴을 조금 보여주셔야 답을 찾을 수 있을것 같네요. 이호선 wrote: > 안녕하세요. > HP Laser...
    • 박성훈
    • 1999.07.10 02:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.07.10 02:56
      제가 이미 답변을 했던것 같은데요... 쩝.. TPrinter클래스는 윈도우의 Printer Driver를 이용합니다. ...
    • 델초보
    • 1999.07.10 01:31
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 권만섭
      1999.04.29 05:27
      여기에 자주 답변 올려주시는 많은 분들께 감사드리면서 저희가 주고객과 주고객의 고객(부고객)을 관리...
    • 정영호
      1999.04.30 07:28
      권만섭 wrote: > 여기에 자주 답변 올려주시는 많은 분들께 감사드리면서 > > 저희가 주고객과 주고객...
    • 안치봉
      1999.04.29 03:38
      장아무개 wrote: > DBGrid name : printer_DBGrid 이고요 > > properties 중에 options 라는 항목 있습...
    • OHJANG
    • 1999.07.10 00:24
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 이호선
      1999.04.29 02:07
      안녕하세요. HP Laserjet프린트기가 현재 기본 프린터기로 설정되있고 프로그램중 PrintSetupDialog에서 ...
    • 이정욱
      1999.07.10 02:54
      Image안에있는 Picture.Bitmap.Canvas의 크기를 늘려주어야 합니다. 즉, Image.Picture.Bitmap.Canvas.H...
    • 이정욱
      1999.04.29 05:30
      인쇄루틴을 조금 보여주셔야 답을 찾을 수 있을것 같네요. 이호선 wrote: > 안녕하세요. > HP Laser...
    • OHJANG
      1999.07.10 04:35
      우선 귀하의 빠른 답변에 감사드립니다... 그러나~~ T.T 말씀하신데로 아래와 같이 이미지의 Bitmap의 ...
    • 이정욱
      1999.07.10 06:07
      Canvas가 빠졌습니다..쩝.. Image1.Picture.Bitmap,Canvas.Width 입니다. OHJANG 께서 말씀하시기를....
    • 안치봉
      1999.04.29 03:38
      장아무개 wrote: > DBGrid name : printer_DBGrid 이고요 > > properties 중에 options 라는 항목 있습...
    • Faster
    • 1999.04.29 00:23
    • 4 COMMENTS
    • /
    • 0 LIKES
    • OHJANG
      1999.07.10 00:14
      질문은 다름아닌 SetActiveWindow에 대한 질문입니다. 델파이1에서 SetActiveWindow(Self.Handle); ...
    • 이정욱
      1999.07.10 02:53
      SetForegroundWindow 함수를 사용해 보세요. OHJANG 께서 말씀하시기를... > 질문은 다름아닌 SetActiv...
    • OHJANG
      1999.07.10 04:30
      제가 글에서 분명히 아래와 같이 밝혔거늘... 쩝... > 예전에 수많은 델파이전문가(?)들이 수많은 종류...
    • 구창민
      1999.07.10 11:53
      OHJANG 께서 말씀하시기를... > 제가 글에서 분명히 아래와 같이 밝혔거늘... 쩝... > 예전에 수많은 델...
    • 1999.07.09 23:42
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 1999.07.09 23:34
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이호선
    • 1999.04.28 09:04
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.28 21:33
      이호선 wrote: > 안녕하세요. > 한 폼에서 프린트가 끝난상태를 알고 폼을 닫을려 합니다. > 프린트가 ...
    • 문창완
      1999.07.09 23:11
      이런 질문 올려도 되는지는 모르지만..죄송... 아이비엠피시 의 프로그램을 맥으로 포팅(맥프로그램으...
    • 이정욱
      1999.07.10 02:51
      C로 되어있다면 맥용 C를 구해서 맥용 OS에 맞는 API들로 변환을 한 후 재 컴파일 해야 합니다. 델파이로 ...
    • Heaven
    • 1999.04.28 17:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • rain
      1999.04.28 20:48
      음..제 개인적인 의견으로는 table 컴퍼넌트 보다는 query 컴퍼넌트를 사용하시는게 더욱 나을것 같습니다....
    • 유민호
    • 1999.07.09 21:16
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이호선
      1999.04.28 09:40
      안녕하세요. 일반 Control들의 Drag&Drop은 어떻게 해야 하는지 궁금합니다. 예를들면 Tab Control을 Dra...
    • 신인재
      1999.04.28 20:12
      이호선 wrote: > 안녕하세요. > 일반 Control들의 Drag&Drop은 어떻게 해야 하는지 궁금합니다. > 예를...
    • 이일수
    • 1999.07.09 20:34
    • 3 COMMENTS
    • /
    • 0 LIKES
    • Heaven
      1999.04.28 17:33
      안녕하세요? 프로그램 개발중에 잘 안되는 것이 있어 이렇게 질문을 드립니다. 현재 데이타베이스 관...
    • 이정욱
      1999.07.10 02:58
      델파이에있는 ServerSocket은 다중연결을 지원합니다. 메모리가 허용하는 범위내에서 말이죠. 그리고 ...
    • rain
      1999.04.28 20:48
      음..제 개인적인 의견으로는 table 컴퍼넌트 보다는 query 컴퍼넌트를 사용하시는게 더욱 나을것 같습니다....
    • 심주성
    • 1999.04.26 05:39
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 1999.07.09 20:23
      프로그램을 실행 중 어떤 Item Menu를 Click을 하는 순간에 Name을 가져오는 방법을 가르쳐 주세요.
    • 안치봉
      1999.04.26 19:30
      심주성 wrote: > > 안녕하세요. 완전프로그래밍 초짜입니다. > > delphi4.0을 해볼려구 함 깔아...
    • 조복기
      1999.07.09 20:46
      정 께서 말씀하시기를... > 프로그램을 실행 중 어떤 Item Menu를 Click을 하는 순간에 Name을 > 가져오...
    • 심주성
      1999.04.28 09:40
      안치봉 wrote: > > 안녕하세요. > > 잘은 모르겠지만 델파이4가 일부 그래픽카드와 충돌한다는 설도 ...