ミ,,゚Д゚彡DelフサギコのフサフサDelphi談話室�A
■ このスレッドは過去ログ倉庫に格納されています
0001Delフサギコ
NGNG/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∬ ∧,,∧ | Delphi や Borland に関する話題
~━っミ ゚Д゚彡,, < 雑談や質問を、しながら
∀._(,,,~ ,,,~⊃_ | マターリくつろごうや
━┳┷ |. ,(~ヽ,,,ミ. \_________
┃...| ̄ ̄し'J.  ̄ ̄ ̄
┻ ヽ ̄ ̄ ̄ ̄ ̄ ̄ ̄ AA ハリマクッテ ヨシ
0153デフォルトの名無しさん
NGNG0154152
NGNGVXL=>VCL
VXLってなんじゃい
0155Kusakabe Youichi
NGNGIn article <[email protected]>, "146: デフォルトの名無し
さん" <[email protected]> wrote:
> { と } はShiftキーを押さなくちゃいけないので
> ものぐさなおいらには面倒臭い
Pascalユーザーは()もつかわないのかー
0156Kusakabe Youichi
NGNGIn article <[email protected]>, "147: デフォルトの名無し
さん" <[email protected]> wrote:
> 個人的には:=って:のときはshiftキー押さないのに=のときは押さなきゃならな
いからちょっと面倒。
ふつうのキーボードは「=」にシフトなんかいらないですね。
プログラム書くってのに、代入や比較で「=」なんてしょっちゅう出てくるのに
それにシフトが必要だなんて、
そんなキーボードははなっからすてすて。
0157デフォルトの名無しさん
NGNG確かに見やすいとは思うけど・・・・縦長イヤーン(笑
型チェックに関しては同感、慣れるとイイ!
0158146
NGNGその通りだけど
{ と } はホームポジションから少し遠いから余計面倒に感じるんだよね
>>150-152
if 〜 then
begin
end else
begin
end;
0159デフォルトの名無しさん
NGNGアホはプログラムしちゃダメ!
みんなに迷惑だYO!
0161デフォルトの名無しさん
NGNGdelphi 6 professional で
>お客様は、本ソフトウェアの単一のコピーを1台のコンピューターにインストールし、
>そのコンピューター上で使用することのみが出来ます。
>お客様唯一人が本ソフトウェアを使用する限りにおいて、
>本ソフトウェアを自由に1台のコンピューターから他のコンピューターに移すことが出来ます。
でいうところの 移す っていうことは前に使ってたほうはアンインストールしないと別のマシンには
インストールしちゃいけないんですかね?
5のときはデスクトップとノート2台にインストールしちゃってたんだけど・・・まずかったのかな・・・
0162デフォルトの名無しさん
NGNGライセンスについては、棒に直接聞いたほうがいいと思われ。
俺は個人でプロ持っていて自宅に入れているけど、会社ではパーソナル版入れている。
しかし、なんつーか、パーソナル版機能低すぎ。タダだからしょうがないけど。
0164Delフサギコ
NGNGミ ゚Д゚彡
〜ミ,,,,uuミ
Typoって何かの略ですかしら?
フサは>>158派です
if 〜 then
begin
end else
if 〜 then
begin
end;
elseifするのもネストが必要ない。
begin .. end は { .. } よりヨミやすくて好きだけど
タイプミスは、いまだにedn; になってしまう事多し。
{キーでbegin
}キーでendが挿入される機能はなかなかヨイかも。
0165デフォルトの名無しさん
NGNG・・・らしい。
0166デフォルトの名無しさん
NGNG0167Delフサギコ
NGNG∧,,,∧ じゃ、Ctrl+{でbegin入力ってのは
ミ,゚Д゚,彡 ♪ ドウデショ?
(( ⊂⊂ _)
(__ノ'''' 彡 G-Expertではできないのかな?
0169Delフサギコ
NGNG∧.,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ミ.,,゚∀゚彡< >>165サンクスコ。
ミ つ目(ミ . \_______________
〜ミ,,O,,,,,,つ
今日、クスコの実物を見てきた(藁
0170デフォルトの名無しさん
NGNGクスコって、ドイツのシンセサイザー演奏家のこと?
0171Delフサギコ
NGNGミ。Д。彡
∨゙∨∪ イエ コッチデス
http://www2.plala.or.jp/oniwa-kokko/saibousin/kensin-nagare.html
0172デフォルトの名無しさん
NGNG0173デフォルトの名無しさん
NGNG感動した!!
2chは勉強になるな〜
0174Delフサギコ
NGNG,∧,,∧ < あ、話がエロのまま
/,,ミ,,゚Д゚彡 \ 終わってしまっている。
//\ ̄ ̄ ̄\ \ まずい・・・・
// ※.\___\  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\\※ ※ ※ ※ ※ヽ
\`ー──────ヽ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ということで、話題フリ、G-Expertsでお気に入りだった
複数行コメントアウトショートカット/アンコメントアウト
Ctrl+Alt+CとCtrl+Alt+Uが
(だったと思うのだけど)
Ctrl+Alt+ピリオドとCtrl+Alt+コンマになっているのはなぜゆえ?
Ctrl+Alt+Cにしても動作しないのは
何かとぶつかっているのかな.......
http://www.gexperts.org/download.html
0175デフォルトの名無しさん
NGNGコードテンプレートに登録すればいい。
[ツール]-[環境オプション]-[支援機能]タグで、
コードテンプレートの[追加]ボタンを押す。
名前:be, 説明:ブロック
として、コードの欄に、
begin
|
end;
って入れとけばいい、そうすりゃbeまで打って[Ctrl]+J
で補完してくれる。
>>174
[Ctrl]+[Shift]+Cがクラス定義補完だから将来ぶつかる恐れがある。
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNG毎日使ってるけど?
0178デフォルトの名無しさん
NGNGクスコを挿入したの?挿入されたの?
0179デフォルトの名無しさん
NGNGミ.,,゚∀゚彡< >>1 ファンです。
ミ つ目(ミ . \_______________
〜ミ,,O,,,,,,つ
0180デフォルトの名無しさん
NGNG2バイト文字の部分でも、カーソルが1バイト分しか移動しない
という事がよく起こるのですが。これを回避する方法はありませんか。
0181デフォルトの名無しさん
NGNG1. RichEdit の Font の CharacterSet が日本語(SHIFTJIS)になっていない
2. 海外のソフト(たまに MS を含む)が英語版の Richedit.dll をインストールしてしまった
どちらかです。
0182デフォルトの名無しさん
NGNG存在しないのですか?
0183デフォルトの名無しさん
NGNG各アプリのVBAリファレンス。
0184Delフサギコ
NGNG|Д゚彡
|エロU クスコ見ただけDAYO
| ミ サワテ ナイヨ
| U
クスコ見たいなら
文京区役所へGO!
ここ、何のスレだ?
>>182ヘルプないです。
>>181のおっしゃるとおりです。RichEdit系のDLLは
アプリに梱包してしまいませう。
0185デフォルトの名無しさん
NGNG0186181
NGNGところで、 system\riched.dll は
プロパティ→言語に US とかかれていたのですが、
system\riched32.dll は言語「日本語」になっていました。
0187185
NGNG・・・とか煽ってみる。
0188デフォルトの名無しさん
NGNG0189デフォルトの名無しさん
NGNG0190デフォルトの名無しさん
NGNG必要ないんだけど。考えてごらん。
0191デフォルトの名無しさん
NGNGハゲ同意
procedure Hoge(var obj);
よりも
procedure Hoge(var obj: TObject);
って書きてーよ
>>190
まじ?
0192デフォルトの名無しさん
NGNGinline asmで通らないのですが…。
http://www.geocities.com/SiliconValley/Grid/9828/Delphi/scanf_d.html
0193デフォルトの名無しさん
NGNG0194デフォルトの名無しさん
NGNG開発元に問い合わせたら?
0195デフォルトの名無しさん
NGNGprocedure Hoge(obj : TObject) で十分だろ?
obj 自体,すでにポインタなんだし。var つけなきゃいけないのは obj そのものを
変更するときだけだけど、ポインタなんだから nil 初期化以外の値を設定することは
意味を持たない。
よーするに、
procedure Hoge(obj : TObject);
でも
procedure Hoge(var obj : TObject);
でも、Hoge のなかで
Hoge.caption := '123';
のような操作ができるってこと。
どーしても var つけたい理由はなんだ?
0196デフォルトの名無しさん
NGNG>意味を持たない。
いや、まさにそれね。
それだけのために文句いうのは、わがままってもんかもな。
0197デフォルトの名無しさん
NGNGscan_f.pas の 687 行目あたりを
end else
asm
fstp ST(0);
end; // Just clear the FPU stack
にすればコンパイルとおるけど?
非互換性の問題ですね。
0198デフォルトの名無しさん
NGNGあとAbstractFactory(?)みたいなものを実装する時とか……
0199198
NGNG0200デフォルトの名無しさん
NGNG0201Delフサギコ
NGNG,,,,,,,,,,,,,,,,∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′,,,,,,,,,,ミ,,゚Д゚彡 < もう少し、具体的な例が聞きたい。
UU"""" U U \_______________
普通にvar でポインタの変更は出来るのでは?
procedure AAA(var Btn1, Btn2: TButton);
var
Btn: TButton;
begin
Btn := Btn1;
Btn1 := Btn2;
Btn2 := Btn;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
OutputDebugString(PChar(Button1.Caption));
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
OutputDebugString(PChar(Button2.Caption));
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
AAA(Button1, Button2);
end;
0202デフォルトの名無しさん
NGNGDelフサギコ 論点ずれ。
AAA に TButton から継承したクラスも渡したい。ってこと。
0204Delフサギコ
NGNGミ,,゚Д゚彡っ━'~ | 何がしたいのかが、わからないから
ミ∪ ~,ノ < 論点もずれるわな。
ミ '' ミ \____________
し'~し'
これじゃダメなの?
procedure ObjExchange(var Obj1, Obj2: TObject);
var
Obj: TObject;
begin
Obj := Obj1;
Obj1 := Obj2;
Obj2 := Obj;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
ObjExchange(TObject(Button1), TObject(Button2));
end;
キャストしなければこんなエラーが出ますね。
[エラー] Unit1.pas(51): 変数実パラメータと変数仮パラメータとは同一の型でなければなりません
0205203
NGNGこんなふうに書いてみたらラベルのほうのcaption変えられたよ。
procedure TForm1.FormCreate(Sender: TObject);
var
a, b: TControl;
begin
a := Button1;
b := Label1;
SwapIt( a, b );
// 強引だが、Captionはprotectedなので適当に見えるスコープに出てる派生クラスにキャスト(危険)
TButton(a).Caption := 'どう?';
end;
procedure TForm1.SwapIt(var a, b: TControl);
var
c: TControl;
begin
c := a; a := b; b := c;
end;
0206デフォルトの名無しさん
NGNG0207デフォルトの名無しさん
NGNGクラス指定してしまうと派生クラスの変数が直接渡せないってことか。
キャストでいいじゃん。
0208Delフサギコ
NGNGミ,,゚Д゚ミ < Captionを持つインターフェースを定義して
ミ ミ \プロパティ委譲クラスを作って、ってやるのが綺麗なのかな。
〜ミ,UU_ミ
0209デフォルトの名無しさん
NGNGありがてぇ。サンクスぅ!
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNGキャストしたくないならインターフェースだね
0212デフォルトの名無しさん
NGNGvar つけるかつけないか/値渡しか参照渡しかで子クラスを渡せなくなる
言語仕様に対してどうにかできないかなと言っているのです。
0213デフォルトの名無しさん
NGNG>>196 の
>いや、まさにそれね。
が意味不明
何がまさにそれなのかわからないからもう付き合わない。
0214デフォルトの名無しさん
NGNGとすると呼び出し側で TObject 継承クラスを渡せなくなる言語仕様は
とっても合理的だよ。なぜならば以下のようなケースを未然に防げるから。
procedure Hoge(var obj : TObject);
begin
obj := TObject.Create;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Memo: TMemo;
begin
Hoge(Memo);
Caption := Memo.Text; // memo 変数に入っているのは実際は TObject なのでエラーになる
end;
近眼的な視点でどーたらどーたら言っても意味がない。
0215デフォルトの名無しさん
NGNGApplication.CreateForm(TForm1, Form1);って毎日のように見ているはずだが?
0216デフォルトの名無しさん
NGNGDLLとのインターフェースで
type
THogeCallBack=Procedure (var This:THoge);
THoge =record
foo:Integer;
CallBack:THogeCallBack;
end;
こんなのが必要なんだけど、
クラスの前方参照を真似て
THoge =record;
を入れてもダメみたい
0217デフォルトの名無しさん
NGNGあるんじゃないの?
0218デフォルトの名無しさん
NGNG0219デフォルトの名無しさん
NGNGちょっと前に話題になった、Ctrl+{でbeginってやつ、作ってみました。
割と他人の環境に配慮してないので、使う人は注意。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1007345219&rm=100
0220216
NGNGtype PTHoge = ^THoge;
THogeCallBack=Procedure ( This:PTHoge);
THoge =record
foo:Integer;
CallBack:THogeCallBack;
end;
とやれば確かに定義出来るんだけど・・・これで我慢するしかないのかな
0221デフォルトの名無しさん
NGNGお互い参照じゃ、それしかないねえ。
0222216
NGNGホントは recordじゃなくて object にしてメソッドに出来れば一番いいんだけど
メソッドにすると引数がレジスタ渡しになるんだよね。これをスタック渡しに出来れば
一番いいんだけど
0223デフォルトの名無しさん
NGNG「文字列の要素が255を越えました。」
ってエラーが出ます。
どうにか出来ないでしょうか?
0224216
NGNGTHogeCallBack=Procedure of object;cdecl;
THoge =packed Object
foo:Integer;
CallBack:THogeCallBack;
boo:Integer;
procedure test;cdecl;
end;
これでいいかと思ったら CallBackには2word=8byteの領域が必要なんだよな
やっぱり >>220しか方法ないのか
0226デフォルトの名無しさん
NGNG0227223
NGNGllibc.system('255文字の文字列')
こんな感じです。上のコールはkylix上からコマンドを実行する物です。(libcライブラリを使用してます)
0228デフォルトの名無しさん
NGNGだったらそのメッセージは親切だ。
0229223
NGNG解決策無いですか?
0230デフォルトの名無しさん
NGNG'<255 文字まで>' + '<次の 255 文字>'
てな感じでいけるはず。
0231デフォルトの名無しさん
NGNGするか既存のパスの通ったディレクトリにリンクファイルを作成するか
だと思うが・・・
0232223
NGNGこれでいけますか?
0233223
NGNGkylixの質問だと言うのにみんな親切
ありがとう
>>231
一応255文字の文字列を含んだシェルスクリプトを呼び出す物を作ってみたんですが
それだと動作しないんです。直接起動させないとだめなコマンドらしいんで。
残る方法は「xterm -e コマンド」だけです。
0235223
NGNGこれで文字列の結合いけました。
ありがとう御座います。
0236231
NGNG0237Delフサギコ
NGNG〜′,,,,,,,ミ;゚Д゚彡 < >>219マヂ?!スギャー
UU""" U U \_______________
試したいけど、微妙に時間がネーっす。
どなたか、入れてみた?
0238デフォルトの名無しさん
NGNGD5でもそのままで動きました
でも
beginとendとかよく使う予約後はブラインドタッチできちゃいます
ソース参考にさせてもらいます
0239デフォルトの名無しさん
NGNGprocedure Hoge(var obj);
begin
obj := TObject.Create;
end;
だって危ないじゃん。
0240デフォルトの名無しさん
NGNGウォー!すげー便利だ・・・・・
けど、意識してないと指が勝手にbeginって入力してしまうヽ(;´Д`)ノ
0241デフォルトの名無しさん
NGNGは Format('%s', [10]);だと実行時にエラーが出ますが、
これって、const Args: array of const が型の情報を渡しているのですよね?
それから考えたのが下のですが。。。
procedure Hoge(var Obj: array of const);
begin
if Obj[0].VType = vtObject then
begin
TObject(Obj[0].VObject).Free;
TObject(Obj[0].VObject) := nil;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
Obj: TObject;
begin
Obj := TObject.Create;
// "変数パラメータに定数オブジェクトを渡すことはできません"
// と出ますがどうしてですか?
Hoge([Obj]);
end;
0242デフォルトの名無しさん
NGNG0243デフォルトの名無しさん
NGNG謎の全知死さんは、どこへ行きましたか?
0244デフォルトの名無しさん
NGNGNifty を含むネットに出てこないだけです
Delphi でバリバリ仕事をされています
0245Delフサギコ
NGNG|Д゚彡
| U
| ミ
| U
0246デフォルトの名無しさん
NGNGD5を売り場に出すのはいいかげんやめてください。
0247デフォルトの名無しさん
NGNG定価なの?
0248Delフサギコ
NGNG|Д゚彡 ああいう所はわかってないすから
| U シカタないのでは?
| ミ
| U D4売っている当時にTurboC++とBorlandC++が
売ってる店もあったですし。
0249デフォルトの名無しさん
NGNG前日にタダの奴ダウンロードしてみたけど、やっぱプログラム
初心者には同梱の説明書がないと難しかったので…
新宿ヨドバシのコンピュータ本コーナー調べたけど
まったく初心者から理解できる入門書の類ってないですね。
0250デフォルトの名無しさん
NGNGこのページ初心者にお勧めなんだけど。
できるところまででいいからやってみると吉。
そのあとで初心者用の「はじめての〜」とか書いてある本買えばよろし
と思う。
0251249
NGNGぬお?、面白そうなページ教えてくれてありがとうございました。
本屋にある「入門書」を見て、みんなこんなのわかるんだろか?と
激しく不安になってたので助かります。
ちょっと勉強してきます。
0252デフォルトの名無しさん
NGNGいいなぁ。俺もDelphiで仕事してぇなぁ。
Delphiは、1から3まで一杯仕事で使ったけど、
それ以降はjavaばかり。
周りはunix信者ばかりだから仕方ないか。。。
フサギコ氏は仕事でDelphi使ってる?
■ このスレッドは過去ログ倉庫に格納されています