>>931 procedure TForm1.Button1Click(Sender: TObject);
var
Rgn: HRGN;
Image1: TBitmap;
Image2: TBitmap;
begin
Image1 := TBitmap.Create;Image2 := TBitmap.Create;
try
Image1.LoadFromResourceName(HInstance,'testin.bmp');
Image2.Width := Image1.Width;Image2.Height := Image1.Height;
BeginPath(Image1.Canvas.Handle);
Image1.Canvas.Polygon([Point(50, 50), Point(100, 50),Point(100, 100), Point(50, 100)]);
EndPath(Image1.Canvas.Handle);
Rgn := PathToRegion(Image1.Canvas.Handle);
try
SelectClipRgn(Image2.Canvas.Handle, Rgn);
Image2.Canvas.CopyRect(Rect(0, 0, Image1.Width, Image1.Height),Image1.Canvas,Rect(0, 0, Image1.Width, Image1.Height));
finally
SelectClipRgn(Image2.Canvas.Handle,0);
DeleteObject(Rgn);
end;
Image2.Picture.SaveToFile('testout.BMP');
finally
Image1.Free;
Image2.Free;
end;
end;
.Picture消せ
939 です。
× Image2.Picture.SaveToFile('testout.BMP');
○ Image2.SaveToFile('testout.BMP');
名前を bmp1 bmp2 とかにするといいものを Image1 とかにするから面倒なことに・・・・
「実行すると止まる」とはコンパイルエラーの事だったのか。
946 :
デフォルトの名無しさん:04/10/10 04:30:54
多次元配列
A: array[0..2, 1..3] of Integer;
で、
High(?) = 2 を求めるには?にどう書けば良いのでしょう?
High(A[0]) = 3 ですし。
High(A)
できました。 ありがとうございます。
ついでに
A: array[0..1, 2..3, 4..5] of Integer;
で、4, 5を求める場合は
Low(A[0, 2])
High(A[0, 2])
でした。
他人デバッグ
950 :
デフォルトの名無しさん:04/10/10 13:49:09
文章を読み上げる機能をつけたいんですが、コンポーネント
とか無いんでしょうか。
マイクロソフトのエンジンを使うとして、
メモに貼り付けた日本語を読んでくれるだけでいいんですが・・。
どなたか分るかた居ないでしょうか
MSのって英語だけじゃなかったっけ?
IBMからSDK付で出てたような。
上でComponentStateを教えてもらった者ですが、また新たな問題が・・
PageControlのコンポを作っていて、設計時に固定のTabSheetを動的に生成しています。
その処理はCreateWndメソッドをオーバーライドして、
if csDesigning in ComponentState thenの中で記述しています。
これでポトペタ時にはTabSheetもちゃんと表示され、実行時には作成されずちゃんと動作
するのですが、いったんフレームに貼り付けて設計し、そのフレームをフォームに貼り付けよう
とすると、「コンポーネント名TabSheetはすでに使われています」のようなメッセージがでて、
うまく動作しません・・・。
こんな場合にはどうすればいいんでしょう・・・・。どなたか教えてください!
953 :
950:04/10/10 14:02:09
>>951 レスどうも。いえ日本語もできます。他の言語も。それを使った
読み上げのフリーソフトとか結構ありますし。
ただそれを自分のソフトに組み込むのはどうすればよいのやら・・。
いろいろ試したら、やっとできました。
回答くださった方々、ありがとうございました
もう1つお願いします・・・・
BM(Tbitmap)の座標(100,100)にある点の色が何色か知るにはどうしたら良いのですか?
とりあえず黒かどうか判定するに
Canvas.Draw(0, 0, BM);
if Canvas.Pixels[300, 300] = clBlack then hantei := 0
という文を書いたのですが・・
黒ならhanteiの値を0にしてその後の処理を分岐しようかと
でもうまく行きません。何がまずいのでしょう?
Drawとかしなくても直接BMのある点の色を知る方法とか無いですか?
ヘルプを見てるのですが、「色を知る」 という情報が検索できません
「色を知る」が検索かけてそっくりそのまま出るとは思いませんが
>>954 1.TBitmapにもCanvasプロパティがある
2.100, 100 が知りたいのに何でPixels[300, 300]?
>>954 hanteiをhentaiと読み間違えたよ。それだけだけど。
if BM.Canvas.Pixels[
DBGridに表示するデータについてなのですが、
データが0の時は'XP'、1の時は'Me'と表示するようなことをしたいのですが、
どうすればいいのでしょうか?
それと
>>914で質問しました、DBGridのデータ再取得でいまだに悩んでおります。
DBGridでデータ一覧を表示>別画面に移ってデータ改変>またDBGridに戻る
といったような画面ハンドリングの場合、みなさんはどうやってDBGridのデータを再取得しているのでしょうか?
DBの種類や接続方法によって違うのでしょうが、参考に教えていただければうれしいです。
チャット&ファイル転送を兼ね備えたものを作っているのですが、
何故かローカルじゃないと接続できません。
どういった間違いがあるとこういう事が起こるのでしょうか?
例えば自分のプライベートIPを入れて接続しようとしても接続できません。
9割方DNSかデフォルトゲートウェイの設定が不良
またネットワークの基礎知識の無い奴が
ネットワークアプリ作ろうってのかい?
>>950 MSのエンジン使いたいみたいだけど、
日本語にも対応するようになったんだな。
自分は以前、テレフォニー関係のツールで
合成エンジンが必要になって、MSのも
調べたが、当時は日本語ができなくて
結局、OKIのSmarttalkを使った。
OKIのはActiveXだから、Delでも簡単に実装できた。
>>961,962
すいません本当にアホみたいな間違いしてました。できました。
お騒がせしました^__^;
965 :
デフォルトの名無しさん:04/10/10 23:41:37
おおおっっぱい♪ いもうとのおっぱい
みくろなおっぱい 洗濯かごの中
いっぱいオッパイの残り香イエエエエエ!
ダンシングしながらはいてみたよ!イエエエエエ
おっぱいみたいな肉まん当てたら疑似餌なおっぱい
アンダー60 トップ80 (笑い)
そんなミクロのオッパイ光恵kてやる是イエエエエエ
966 :
デフォルトの名無しさん:04/10/11 00:11:10
引数がキーと文字列でレジストリ値を加えたり
削除したりするソースを公開しているホームページを
知りませんか?
プログラムだけでもいいんですけど。
reg.exew
968 :
デフォルトの名無しさん:04/10/11 00:20:14
>>966 TRegIniFileかTRegistryで検索しろ
>>959 >表示するデータ
対応するテーブルを作るしかないんじゃないの?
>データ再取得
トランザクション再接続じゃダメ?
>>969 DBGridの表示内容改変はできないのですね。了解しました。
トランザクション再接続とは具体的にはどうすればいいのでしょうか。
再取得方法として、以下の方法で再接続してみたのですが、
ADOQuery.Active := False;
ADOQuery.Active := True;
DBGrid.Refresh;
でも
DataSource.DataSet.Close;
DataSource.DataSet.Open;
DBGrid.Refresh;
でもだめなのです。
だめというか、同じ処理を2〜4回やると再取得できているというのが現状です。
なぜ一回ではダメで複数回で反応するのかがまったくの謎なのです。。。
そろそろ次スレ。
973 :
デフォルトの名無しさん:04/10/11 10:14:44
TEditorってシェアウェアなんだけど機能制限ってあるんですか?
ある程度、物になったら払ってもいいかなとは思ってますけど・・・
んだな。次スレで聞けや
>>975 超初心者向けスレッドでそういうボケをかますと本気にされそうですね.
念のために書いておくと
>>974氏の意図は
「TEditorのおひさるページで調べるなり,作者に直接問い合わせるなりすればよいのに
なぜわざわざここで尋ねるのか?」
ということだと思われます.
すみません。TWebBrowser について詳しいサイトを教えてください。
日本語でも英語でもかまいません。よろしくお願いします。
>>978 わざわざ、ありがとうございました。信じられないことに検索をすることをど忘れしていました。
>>970 ゴメン、ADO使ってないのにレスしてしまった。
参考までにIBの場合で書くと、
DataSetをPostしてもトランザクションをコミットしないと実際にはDBに
書込まれないので、他のクライアントからは更新されてないように見える。
任意にサーバーのDB更新したいならコミット処理を書く。
たぶん同じケースなんだと思うけど、ADO知らないので詳細は不明。
perlで言うところのSpriteの様なライブラリのdelphi版はないでしょうか?
機能的にはSQLのサブセットを使ってテキストファイルに入出力を行うものです.
すれ違いですがお願いします。
WinXPでCD-ROMやリムーバブルドライブにメディアを挿入した時に
ドライブ内のファイルによって自動再生プログラムを選択する
ダイアログが表示されますが、その中に自作プログラムを入れたいのですが
どうすればよいでしょうか?
具体的には、デジカメのメモリーカードを挿した時に自動でHDDに取り込む
プログラムを作っています。
自動起動するCDをエクスプローラで開き、autorun.infというファイルの中身を見れ。
もしくは"autorun.inf"でぐぐれ。
そういうこっちゃねーだろ
>>983 オレもそう答えそうになって踏みとどまったのだよ
>>982 漏れならそのダイアログにあるプログラムの名前で
レジストリをサーチする。
何件か絞り込んだらなんとかなるんじゃないかな
>すれ違いですがお願いします。
図々しい。