■@ITの記事
@nifty FDelphiフォーラムで、紹介されていたものですが、@ITのサイトで
.NET完全対応で生まれ変わったDelphi 8
という特集があります。
| 固定リンク
今日、本屋でdotNETマガジン(翔泳社)という雑誌を見つけました。この雑誌は、今までも店頭で見たことはあるのですが、内容がほとんどVB.NETネタなので、購入したことはありませんでした。
しかし今月号(7月号)には、特別付録小冊子「Delphi8完全開発ガイド」というものがついているではないですか。ということで、早速購入して読んでみました。内容は、主にWin32アプリを.NETアプリへ移行する際の注意点をまとめたものとなっています。私の感想としては、もっと移行の際の問題点をクリアする方法を示してほしかったです。(付録の小冊子に要望すること自体無理があるかもしれませんが)例えば、Delphi8にはJpegユニットがありませんが、その解決方法としてDelphi7でDLLを作成し、それをDelphi8で使うというアイディアがありましたが、DBのBLOBフィールドにJPEGを入れるような場合には、この方法ではクリアできません。(DBに画像データを入れるべきじゃないというのは、この際別問題として)
又、文字列操作の.NET化を説明するための例題に、わざわざコンパイラのような難しいものを取り上げなくても、もっと簡単なサンプルの方がわかりやすいんじゃないかと思いました。
(えっ、肝心の本誌の方ですか?Delphiの記事がないので読んでないです。)
| 固定リンク
TMyDBGrid = class(TDBGrid) private procedure CMMouseWheel(var Unused: TCMMouseWheel); message CM_MOUSEWHEEL; (略) procedure TMyDBGrid.CMMouseWheel(var Unused: TCMMouseWheel); var iRow,iRowCount:integer; Delta: integer; begin Delta := Unused.WheelDelta; if (0 < Delta) then //上スクロール begin if (Self.Row <> 1) then //最上段でない場合 //最上段に移動させます。 Self.DataLink.DataSet.MoveBy(-(Row-1)) else //3行スクロール Self.DataLink.DataSet.MoveBy(-3) end else begin //下スクロール iRowCount:= Self.RowCount - Self.FixedRows; //表示行数の計算 if (iRowCount > Self.Row) then begin //最下段に移動させます。 iRow:=Self.Row; Self.DataLink.DataSet.Moveby(iRowCount-iRow); end else //3行スクロール Self.DataLink.DataSet.MoveBy(3); end; Unused.Result := 1; end;
| 固定リンク