名前 題名 ▼ Mr.XRAYさん > ▼ Saraさん,やってくれましたね. > この店の常連さんは,まったく. > しかし,このぐらいのプログラムも出来ないとは.能力の限界か? > えっ? 昔からだろうって? ハイハイ. > 悔しいでございます.バッチリ動作しますです(涙). > > var > AFocusControl : TWinControl; > > //============================================================================= > // フォーカスをセットするコントロールを指定 > // タイマーコンポ設定 > //============================================================================= > procedure TForm1.FormCreate(Sender: TObject); > begin > AFocusControl := ListView1; > ActiveControl := AFocusControl; > > Timer1.Enabled := False; > Timer1.Interval := 10; > end; > > //============================================================================= > // ファイル選択ダイアログでPDFファイルを選択して表示 > //============================================================================= > procedure TForm1.Button1Click(Sender: TObject); > begin > with OpenDialog1 do begin > DefaultExt:='PDF'; > Filter:='Acrobat PDFファイル|*.PDF'; > Options:=[ofReadOnly]; > > if Execute then begin > Update; > AcroPDF1.LoadFile(FileName); > AcroPDF1.setShowToolbar(False); > Timer1.Enabled := True; > end; > end; > end; > > //============================================================================= > // 表示方式の変更 > //============================================================================= > procedure TForm1.Button2Click(Sender: TObject); > begin > if not AcroPDF1.Visible then exit; > > if Sender=Button2 then AcroPDF1.setView('fit'); > if Sender=Button3 then AcroPDF1.setView('fitwindow'); > if Sender=Button4 then AcroPDF1.setView('fith'); > if Sender=Button5 then AcroPDF1.setView('fitb'); > if Sender=Button6 then AcroPDF1.setView('fitbh'); > if Sender=Button7 then AcroPDF1.setView('fitbv'); > if Sender=Button8 then AcroPDF1.setView('fitv'); > > Windows.SetFocus(AFocusControl.Handle); > end; > > //============================================================================= > // フォーカス移動のためのタイマーイベント > // PDF文書は,読み込み表示の際,PDF文書にフォーカス移動してしまうのでその対策 > //============================================================================= > procedure TForm1.Timer1Timer(Sender: TObject); > var > hWindow :HWnd; > cName : array[0..MAX_PATH - 1] of char; > begin > if Form1.Active then begin > hWindow := Windows.GetFocus; > GetClassName(hWindow, cName, sizeof(cName)); > if cName = 'AVL_AVView' then begin > if not AFocusControl.Focused then Windows.SetFocus(AFocusControl.Handle); > end; > end; > end; > > //============================================================================= > // PDFをクリックしたらPDFをキーやマウスで操作可能にするため,タイマーをOFF > // これがない場合(タイマーイベントが有効な場合)は,PDF文書のページ移動は,ス > // クロールバーのマウス操作.あるいは,操作用のコードでのみ可能となる > //============================================================================= > procedure TForm1.AcroPDF1Enter(Sender: TObject); > begin > Timer1.Enabled := False; > end; GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link