くだすれDelphi(超初心者用)その57 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2016/10/13(木) 13:21:54.84ID:7i5E+q2+
Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、もしくは
質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。

Delphi使いが優しくコメントを返しますが、
お礼はDelphiの布教と初心者の救済をお願いします。

■Delphi XE6 Professional/Enterprise/Ultimate/Architect エディション(トライアル版有)
64bit Windows、Mac OS XからiOS、Androidのアプリも開発可能。ライブラリのソースコード付き。アカデミックライセンス有り。
旧バージョン(XE6/5/4/3/2/XE/2010/2009/2007/Delphi 7)のライセンス取得とダウンロードが可能。(アカデミック不可)
ttp://www.embarcadero.com/jp/products/delphi

■Delphi XE6 Starter エディション
個人/5人以下の企業・組織向け。年間売上1000US$以内の商用開発可。
(※)Delphi、Visual Studio等の有償/無償の開発ツールユーザーが対象。インストール確認は特に行わない。
ttp://www.embarcadero.com/jp/products/delphi/starter

■Embarcadero RAD Studio XE6 (Delphi、C++Builder、HTML5 Builder等を含むビジュアル開発スイート)
ttp://www.embarcadero.com/jp/products/rad-studio

<前スレ>
くだすれDelphi(超初心者用)その56
http://echo.2ch.net/test/read.cgi/tech/1405783063/

<過去スレ>
DelWiki (Delphi 関連の過去スレッド)※行方不明
ttp://delwiki.info/?
2018/08/05(日) 12:50:09.31ID:gWGunr7x
>592-583
ややこしくてすみません。
https://agree.5ch.net/test/read.cgi/mango/1532726276/496
↑元ソースあどれすも記載しました。

>>592 ありがとうございます。夜にでも調べてみます。
595427です
垢版 |
2018/08/05(日) 22:33:28.02ID:gWGunr7x
>>592
どうやら>590 先のサブルーチンはズラして60進法座標にしてるだけのようです。
バイナリ読み込んで浮動小数点数にするパールの変換方式がまださっぱり分りませんが、適当にがんばります。
Delphi の Single 〜 Extended とか浮動小数点数を16進バイナリに直接相互変換みたいな内部関数ってありましたっけ?
現状D7でIEEE754-SingleとDouble は外部関数で使っていてそれだけでかなりサイズが大きくなってしまう。

 浮動小数点型の数値はメモリ上でどのように格納されているのか C C++
 2. 浮動小数点型の値のメモリ上での並び
 ttps://qiita.com/nia_tn1012/items/340a1f0ad71bf6085f7f
 元の値 : 1.024000
 内部表現の値 : 3F83126F
    ↑
この例では、IEEE754-Single でした。

>>593
IEEE754 単精度浮動小数点数(float)の文字列とかいろいろ入れても
ただの整数になるようですが?

var
f: Single;
begin
Edit_Single.Clear;
if (Edit_IEEE754_HexSingle.Text <> '') and (StrToIntdef('$' + Edit_IEEE754_HexSingle.Text,-1) <> -1) then
f := StrToInt( '$'+ Edit_IEEE754_HexSingle.Text );
Edit_Single.Text := FloatToStr(f);
end else Edit_Single.Text := '入力エラー';
end;
596590 です
垢版 |
2018/08/05(日) 22:36:47.70ID:gWGunr7x
>595
パールスレでの名前欄 「427です」 がそのまま入ってしまいました。
>>590 です
2018/08/27(月) 09:41:49.47ID:UfmEJPeB
Delphiの逆コンパイラでおすすめって何になるの?
2018/08/27(月) 21:32:59.26ID:1pvUgZqM
超初心者スレだから許して のしつもんです。
Win10の開発は初めてです。
昔で言う .ini なんかはどこに置くのが基本ですか?
レジストリ使わない場合・・。
publicには Appdata とかないみたいだし。

Pathの 記述とか??
今でも TIniFile とか使いますか?
2018/08/27(月) 22:05:18.90ID:UfmEJPeB
>>598
exeと同じフォルダ
2018/08/27(月) 22:24:54.69ID:lZIE2FNf
>>598
%appdata%にアプリケーションのフォルダ作って保存
2018/08/27(月) 23:33:36.63ID:1pvUgZqM
回答有り難うございます。
とっても参考になりました。

ユーザー別なら %appdata%\appname\
ユーザー共通なら %ProgramData%\appname\

って感じで 良いみたいですね。
2018/08/28(火) 12:13:22.36ID:e0zrlbVu
確かプラットフォームごとのパスを取得する関数が用意されてたような
603デフォルトの名無しさん
垢版 |
2018/08/28(火) 16:21:16.43ID:6kEMX7h9
iniファイル便利か
2018/08/28(火) 18:16:29.63ID:3sF2+X9S
>>603
PCが壊れたとき等、環境移行はローテクの方が・・
2018/08/28(火) 19:10:27.83ID:pa8Xm38g
レジストリなんか使わない。
XMLなんか使わない。
やっぱりINIがいい。
2018/08/28(火) 20:53:25.15ID:yUJd0FCJ
「プロジェクトから削除」で削除したunit2,unit3って結局生きてる?
unit1で参照してるからコンパイルしたらエラーが出ると思ったら何も出なかった。
プロジェクトの削除ってどう言うこと?
2018/08/28(火) 21:09:44.56ID:dFKNKLFU
そもそも
システムと連携でもしない限り
レジストリ使う必要が無いと思うんだが
自動的に何も考えずにレジストリ使ってるのが多いと思う
2018/08/28(火) 21:21:58.23ID:mAx5yIVS
>>606
プロジェクトツリーから削除されるだけで参照は自分で削除しないといけないよ
609606
垢版 |
2018/08/28(火) 22:07:01.20ID:yUJd0FCJ
>>608
有難う
2018/08/29(水) 07:06:43.69ID:0P3/EBfJ
(アン)インストーラが付属しないツールで
設定をレジトリとかexeフォルダ以外のフォルダに保存したりとか
何考えてるのか分からないのもあるからな
2018/08/29(水) 19:36:02.35ID:2f70+wG1
>>598 >>601
Win8.1以降でiniファイルは取り扱いが難儀になったので
TIniFileでも拡張子を別のものにすると素直に使える。
例えば .env とか
.ini でトラブルになる挙動としては
管理者権限でプログラムを動かすとiniは書き出せるけどD&Dできなかったり
ユーザー権限で動かすとiniが書き込み変更できなくてエラーになったりする。
2018/08/29(水) 20:50:27.29ID:CUO+ntMd
インストールフォルダ自体がドキュメントフォルダ強制とかもあるな
613デフォルトの名無しさん
垢版 |
2018/08/30(木) 10:16:05.96ID:S/vwwZyF
>>611
virtualstoreに入ってしまったものを
間違って元のディレクトリ名で見に行くと

「書き込み変更できなくてエラーになったり」

するね
614611
垢版 |
2018/08/30(木) 16:00:49.78ID:xpekrfIC
>>613 >>598
こんな感じでやってます。
env : 「environment 環境」の略を当ててます。

procedure TForm1.SaveSettings;
var
Log_IniFile: TIniFile;
ia : Integer;
begin
Log_IniFile := TIniFile.Create(ChangeFileExt(Application.ExeName, '.env')); // .env ← .ini
try
// [window]
Log_IniFile.WriteString('window', 'x0', IntToStr(Form1.Left));
Log_IniFile.WriteString('window', 'y0', IntToStr(Form1.Top));
// [〜〜]
finally
Log_IniFile.Free;
end;
end;
2018/08/30(木) 16:39:09.31ID:h4Uebctf
WriteInteger使えよww
2018/08/30(木) 17:54:05.37ID:xpekrfIC
レジストリを汚しまくるのは好かん!
617デフォルトの名無しさん
垢版 |
2018/08/30(木) 18:00:59.87ID:RB/Vojpj
>>616
ほんそれ
2018/09/04(火) 04:53:47.13ID:cIgTW3mD
スレッドオブジェクトで外部機器と通信するコンポーネント(自分で取り込んだactivexです)を使いたいのですが、
フォームがないのでcreateの引数って何にしたら良いでしょうか?
サブのフォームをvisible:= falseにして、そこに配置した方が良いでしょうか?
2018/09/04(火) 07:40:32.69ID:Iud04UXg
引数はnilでok
必要ならparentを指定する
2018/09/04(火) 20:59:53.37ID:cIgTW3mD
>>619
有難うございました。
2018/09/06(木) 20:32:48.73ID:b7skbySG
十数年ぶりにコード書いてます。

Delphi7 のソースを XE3 で書き直そうとしてますが ???です。
XE3は 買ったきり手つかずだったものを初めて使ってます。

ShortDateFormat、LongDateFormat、ShortDayNames が未定義の識別子エラーとなります。

uses には SysUtils が有ります。
どんな原因が有り得ますでしょうか?

挫けそうですw
2018/09/06(木) 20:59:54.36ID:Y0pbPBaL
単純な変数から変更されているので、
FormatSettings.ShortDateFormat
のようにしてみてくだされ。
2018/09/06(木) 21:14:09.34ID:b7skbySG
速攻でスゲー! 解決しました!

HELP の ”親” ってのを 見なきゃイケなかったのね
有り難うございます。

それにしてもHELP が いちいちHTMLソースが表示されて
”制限されたコンテンツの表示” ってクリックしなきゃなのは しんどい・・・
624618
垢版 |
2018/09/07(金) 13:31:35.10ID:nbZaHp3Y
618です。
マルチスレッドで自分で取り込んだActiveXコントロールを使えるようにはなったのですが
不定期にEAccess Violationが出るので調べたら、このコントロールはSTA モデルとなっていました。
自分にはActiveXの知識があまりなくマルチスレッドで使用するにはCOM 関数のCoMarshalInterThreadInterfaceInStream,
CoGetInterfaceAndReleaseStream を使うのかな?ということまではわかりました。
ただ、参考にしたサイトには「インタフェースポインタを他のアパートメントに渡す場合,インタフェースポインタをマーシャリング
する必要があります。」と書いてありましたが理解できていません。
多分、各スレッドでCreateするのではなく1つのコントロールを各スレッドで使い回すのかなと思っています。
Delphiではどうするのか、とっかかりだけでも教えてください。
よろしくお願いします。
2018/09/08(土) 10:16:41.02ID:7h/1w/8o
C#にしたら
2018/09/08(土) 12:26:23.76ID:3pZBr9hd
そのまんまでしょうに。アパートメントをまたぐ場合はマーシャリングしなきゃいけない。
http://eternalwindows.jp/com/apartment/apartment02.html
で、CoMarshalInterThreadInterfaceInStreamでIStreamのバイトストリームに変換する。
で、そのストリームをアパートメントの異なる別スレッドに渡してそこでバイトストリームから元のオブジェクトに戻す。

コントロールのスレッドモデルより、各スレッドをどう初期化しかかがまず重要。
Comを使うときは各スレッドでCoInitialize(Ex)を呼ばなきゃいけんが、それでスレッドのアパートメントを指定する。

https://docs.microsoft.com/en-us/windows/desktop/com/processes--threads--and-apartments
読めば書いてある
2018/09/08(土) 18:32:14.22ID:ifS5zDmq
>>597
未だに見つけられていない

DeDe 3.50.02 Build 1619 for Windows
ttp://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/DeDe.shtml

Delphi製のバイナリを解析する方法
ttp://peryaudo.hatenablog.com/entry/20110105/1294209734
>DeDeのprojectタブを使うと、
>ディスアセンブルされたx86のコードをコメントでくくっただけのpasとデコンパイルされたdfmをファイルに落とせる。

x86コードを直接見てもワケワカメ
2018/09/13(木) 10:48:16.02ID:TILqF4on
FireMonkeyのStringGridでマウスカーソル直下のセルの特定の仕方を教えてください。
マウスの座標は取得できています。
よろしくお願いします。
2018/09/13(木) 15:53:14.96ID:D2+vOfIF
CellByPoint
630628
垢版 |
2018/09/14(金) 00:13:42.04ID:h30gDWV5
ありがとうございました。
一応は取得できるのですが、セル内のマウスカーソルの場所によって、セルが特定できたり
できなかったりという感じです。
また、列の位置は左端なら本来は0だと思うのですが1が返ってきます。
行は先頭行が16と返ってきます。
MousePos := Screen.MousePos;
StringGrid1.CellByPoint(MousePos.X,dMousePos.Y,ColNo,RowNo);
上記のようなプログラムですが、マウスの位置の取得方法が間違っているのでしょうか?
2018/09/14(金) 07:11:59.92ID:N3zUYsZd
onMouseMoveでテストしてみて
2018/09/14(金) 08:18:00.14ID:sVVlCHCP
ローカル座標に変換する必要あんでね?
2018/09/14(金) 12:20:56.93ID:rsfS0hy3
>>630
>MousePos := Screen.MousePos;
この段階でマウス座標はスクリーン座標(スクリーンの左上を起点とする座標)なので
クライアント座標(この場合、StringGrid1の左上を起点とする座標に変換しないとダメだよ
VCLならStringGridにScreenToClientというメソッドがあるんだけど
FireMonkeyのことはよく知らんけど似たような(もしくは同名の)メソッドがあるんじゃないかな
2018/09/14(金) 19:36:31.47ID:KQxf0S5x
てかコントロール上のマウス位置から何なしようってときに
スクリーン座標が出てくる訳が分からない
635628
垢版 |
2018/09/14(金) 20:55:44.40ID:QxWxbdYR
皆さん、ありがとうございます。
まだ、解決できていないのですがまずはお礼まで。
ローカル座標はScreenToClientと同じ名前のものがあったので使ってみたのですが
うまくいきませんでした。
VCLの方だときちんとカーソル下のセルを正確に取得できるのに。
FireMonkey難しい。
2018/09/14(金) 21:57:04.38ID:KQxf0S5x
こんなんじゃだめなの?
TForm1 = class(TForm)
private
{ private 宣言 }
procedure StringGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Single);

implementation
procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.OnMouseMove := StringGrid1MouseMove;
end;

procedure TForm1.StringGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Single);
var ACol, ARow: integer;
begin
if StringGrid1.CellByPoint(X, Y, ACol, ARow) then
Edit1.Text := Format('Col:%d, Row:%d', [ACol, ARow]);
end;

カーソル下のセルを正確に取得できてるよ
637デフォルトの名無しさん
垢版 |
2018/09/14(金) 23:50:03.06ID:QxWxbdYR
>>636
ありがとうございます。
やりたいことができました。
>>631
ヒントもらっていたのに申し訳ありません。

あくまでもコントロール上の座標を取らないといけないということですね。
ScreenToClientはアプリのウィンド上の座標と言うことで良いでしょうか?
638デフォルトの名無しさん
垢版 |
2018/09/15(土) 00:17:48.45ID:8rxpHkWL
なんで未だにデルファイなんかやっとるんやおまいら?
2018/09/15(土) 06:26:34.02ID:mxfFGWip
いろいろな言語使えるけどDelphiがベストだと思うから
2018/09/15(土) 06:42:36.21ID:3TWFaDlw
>>638
てかそんな話はエンバカスレでどうぞ
641デフォルトの名無しさん
垢版 |
2018/09/15(土) 11:07:16.52ID:AVfR6YnT
Delphiは討たれる
2018/09/15(土) 17:32:12.84ID:AkXmtK9p
>>641
643デフォルトの名無しさん
垢版 |
2018/09/16(日) 10:48:44.14ID:e3KaLVno
SKRegExpの作者はどこに行ったの?
2018/09/26(水) 11:44:44.46ID:Ov2EA3Ui
今頃デルファイの10.2.3をインストールしようと思うんですが、サイトに書いてあるように一旦10.2をアンインストールしないとまずいですか?
一旦アンインストールした場合サードパーティーのコンポーネントはやはり再インストールしないとダメですか?
10.2.3をインストールしたら復活するとかは無いですかね?
2018/09/26(水) 13:25:05.76ID:WoZunzir
>>644
別のプログラムとしてインストールされるからTokyo用のコンポーネントは再インストール必須
別に10.2を残してても共存はできる
2018/09/26(水) 15:05:08.27ID:Ov2EA3Ui
なんか共存できんかった
2018/09/26(水) 17:59:31.37ID:7bJbQB0s
同居出来ないってCPB CEでも入ってるのか?
648デフォルトの名無しさん
垢版 |
2018/09/26(水) 19:21:31.24ID:ANIjlW8h
BerlinとTokyoは共存できるけどToky同士は共存できなかったはず
10.2から10.2.3は設定データなどを残してアンインストール、インストールで普通に移行できたよ
CDイメージからのインストールの場合だけどね

Webインストールの場合はそれができないんだったっけ
2018/09/26(水) 19:58:22.59ID:V9O91uO9
サードパーティのコントロールが消えるのが嫌でアンインストールせずやってしまった。orz
2018/09/28(金) 08:42:20.23ID:CK9JalNS
ツールパレットにはコンポーネントのアイコンがきちんと表示されているんだけど、フォームに配置するとアイコンが見えない位小さくなってしまうんだけどなんで?
2018/09/28(金) 18:27:10.70ID:L/CPkr5D
>>650
老眼かい?
他人にはあんたの見て思ってる物が大きいか小さいかなんてエスパーでもないから分らない。
画面キャプチャーでもして画像貼れ
2018/09/28(金) 20:17:23.17ID:CK9JalNS
そうか、ご苦労
2018/09/29(土) 04:51:42.90ID:61Ke5MR1
フォームにアイコンだけ表示されるやつは
OnCreateで手動で追加する形でずっとやってるから
どうでもいいは
2018/09/29(土) 06:17:50.02ID:SaDPGrJG
>>650
4Kモニターを使っているのかい?
2018/09/29(土) 20:55:31.30ID:nJOGxOxE
そして
ふてくされて二度と来ないコミュ障であった
2018/09/30(日) 05:42:12.80ID:OYYkxayT
かわいそう・・・
2018/09/30(日) 16:24:03.95ID:sVuwBfqE
意外とみんな覗いてんな
2018/10/03(水) 20:49:10.84ID:T89/Qa9b
モニタにもっと顔を近づけるんだよ きっと見れるよ
659デフォルトの名無しさん
垢版 |
2018/10/04(木) 10:29:39.99ID:FXVBuQxV
モニタよモニタよモニタさん
2018/10/06(土) 09:18:43.15ID:ruQOvniH
マルチデバイスのソフトを初めて作ろうと思っています。
コントロールの配置に関して質問なのですが、とりあえずPC用かスマフォ用を作ってその後、
各デバイス用に配置しなおして再コンパイルする手順でいいでしょうか?
2018/10/06(土) 12:13:05.71ID:Z2kGgnGa
まずalignの使い方かな
2018/10/06(土) 15:33:22.97ID:dM0Hntxh
>>660
FireUI
663660
垢版 |
2018/10/07(日) 08:57:42.83ID:XyZZDpel
有難うございます。
調べて勉強します。
2018/10/13(土) 18:12:13.98ID:3G3/hyQa
何かウェルカムページを開きたびに
セキュリティ警告が出るんだが
2018/10/13(土) 22:28:09.39ID:19TuI9Cj
>>664
SSL証明書が期限切れたから更新あうるまで待ってってMCさんが
2018/10/13(土) 23:05:26.94ID:ApCV8gEF
>>665
なるほど

今日はvclとfmxアプリ間のメッセージングのテストやってて
切り替えるたんびにダイアログが何度も出てイヤんなる
667デフォルトの名無しさん
垢版 |
2018/10/17(水) 17:24:01.23ID:GbCGuExa
ブラウザのタイトルを取得したいんですけど、

WebBrowser1.Document.Titleだと、
'TWebBrowser' は 'Document' という名前のメンバを含んでいません

WebBrowser1.OLEObject.Document.Titleだと、
'TWebBrowser' は 'OLEObject' という名前のメンバを含んでいません

ってなるんです。
usesに何か足りませんか?

uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
FMX.Edit, FMX.Controls.Presentation, FMX.WebBrowser;

Delphi 10.2 Community Edition
668デフォルトの名無しさん
垢版 |
2018/10/17(水) 17:49:10.11ID:GbCGuExa
解決しました。
VLCじゃやないやつで作ろうとしてたみたいです!
2018/11/06(火) 12:05:36.75ID:FnkVAeUe
FMXでLabelのバックカラーの変更って出来ない?
今はPanelの色を変えて、その上に貼り付けてるんだけど。
2018/11/06(火) 15:03:32.51ID:lO/IgrxW
>>669
labelのスタイルに背景ってないからムリじゃないかな

あとpanelよりtlayoutの上にtrectangleのせて
さらにlabelはったほうが柔軟性が高い
2018/11/06(火) 16:08:30.30ID:xJl/nUxi
>>670
TRectangle、オブジェクトエクスプローラからなら子に色んな物入れられるよ
(要するにTRectangleがTLayoutのように使える)
2018/11/06(火) 18:54:34.08ID:O/iOsvOA
>>669
XE5までの知識しかないが、
TStyleBook割り当てて、そっちで対応するんじゃなかったかな?
2018/11/06(火) 19:14:26.53ID:lO/IgrxW
>>671
ホントだ

TPopupなんかもHelpじゃ実行時にParentを操作して
コントロールを乗っけるって書いてあって
使い勝手が悪いと感じてたんだけど
同じ方法で設計時にコントロールを配置できたりするんだよな
674669
垢版 |
2018/11/06(火) 22:06:13.74ID:FnkVAeUe
皆さん、ありがとうございました。
Rectangleって楽ですね。
もう一つ教えて下さい。
panddingとかmarginsを設定して0に元に戻すと隣のコントロールと隙間が空いたままになるのは自分だけ?
675669
垢版 |
2018/11/06(火) 22:08:56.05ID:hsnGAH6F
訂正です。
panddingとかmarginsを設定して実行。
その後、全部0に戻して実行しても隙間が空いたままです。
2018/11/07(水) 12:11:35.51ID:wV9cKqqT
>>675
fmxのmarginはちょっとバグってる気がする

その例と同じかどうか分からないけど
複数のspeedbuttonをalignをleftにして並べて
ボタンのmarginを一度設定すると
marginを解除しても
ボタンの左半分くらいがマウスに反応しなくなる

いろいろやってると何かのきっかけで正常になったりする
2018/11/07(水) 12:24:36.39ID:wV9cKqqT
上にスタイルの話があるけど
スタイルで背景色を変えたら
Windows10以外では適用されてなかった

コンパイルのしかたかなぁ

最近公開したソフトで
ユーザに指摘されて初めて気づいたよ
678669
垢版 |
2018/11/08(木) 21:49:27.80ID:+35zDuDi
結局プログラムで指定すれば配置されるので我慢します
2018/11/15(木) 21:17:33.28ID:T3q1kNSY
fmxでのフォームの最小化と復帰だけど
コードだけでで問題なく動作する?

WindowState := TWindowState.wsMinimize;
WindowState := TWindowState.wsNormal;
でできるはずなんだけどね
何かうまく機能したりしなかったり
2018/11/20(火) 09:18:03.84ID:7wJBb/wv
本棚からDelphi7体験版が出てきたのでインストールしようとしたら、
ライセンス取得のところでエラーが出て使用することができません。
今更ながら、使うことは不可能なのでしょうか?

DelphiXEで非Unicodeのソースが作れればそれでも構わないのですが。
2018/11/20(火) 22:24:15.58ID:yy/MaTgl
今ならフリーのDelphiありますよ
2018/11/20(火) 22:25:24.56ID:yy/MaTgl
すみません非Unicodeと限定されている意味がわからないので現行のものではダメなのかも知れませんね
2018/11/21(水) 01:49:20.19ID:LolYlRS5
使用許諾コードがメールで送られてくる登録フォームならある
今でも機能してるのか知らんけど
http://support.embarcadero.com/jp/install/product
2018/11/23(金) 08:08:59.67ID:aknsIo8R
>>683
良くサイトを見たら、体験版の承認キーの発行は終了しているみたいです。
せっかく教えていただいたのにすみません。
2018/11/24(土) 01:36:16.72ID:e4CBxpxl
FMXをタッチパネルついてるWindows10で動作させるとTListViewとかが勝手にタッチパネル用のスタイルになるのどうにかならんかなぁ
Scrollbarが表示されない上にタッチパネル操作になるから操作が統一できない・・・
デバイス自体を無効にしたらタッチパネルじゃないスタイルで動作するけどなんだかなー
2018/11/25(日) 11:17:43.53ID:x9MDawPF
ListBoxの項目にFocusを付与したいのですが、3,4日うまくいかず困っています。
クリック以外の方法でListBoxにFocusを付与する方法というのはありますか?
2018/11/25(日) 21:01:29.45ID:4hnmy7r/
ListBox1.ItemIndex:=3;
ListBox1.SetFocus;
ってこと?
なんか以前にもこんな質問あったような気がするが
2018/11/26(月) 13:46:48.38ID:gMNgG1vk
>>687
どうもです。
ただ、マウスクリックするとFocusが出ますが、ListBoxの他の所をクリックすると消えちゃうんですよね…。
2018/11/27(火) 01:04:25.95ID:uHJWsmxJ
>>688
そりゃそうだ
他のフォーカスを持つ所をクリックすればフォーカス移る

何がしたいのかわからない
「ウィンドウ ハンドルを持つコンポーネント」の意味を理解してますか?
例えばここ http://delfusa.main.jp/delfusafloor/archive/VA009712_take/delphi/kabeapp.htm

ListBox以外にフォーカス動かしたくないんなら
他の全てをフォーカスを持たないSpeedButtonとかメニューやツールバーとかにするしかない
或いは他を Enabled:=Falseにするとか
2018/11/27(火) 09:44:39.76ID:/9xlS8t7
こんな物を作っていました。
ttp://www1.axfc.net/u/3946835.zip?key=123456
既知の不具合
下手にいじると簡単にバックグラウンドプロセスに行ってしまう。

Focusについてですが、このアプリはFocusが残る物をベースに作りました。
新しく作り直した物がListboxをクリックすると一瞬だけFocusが表示されるのですが
すぐ消えてしまうと言うよく分からない現象が起きていました。

よろしかったらご評価いただければ幸いです。

もう我流は辞めてTurboDelphi〜を参考書に勉強したいと思います。
2018/11/27(火) 09:53:17.62ID:/9xlS8t7
大事なことを忘れていました。

このアプリはエクスプローラ上で.wavファイルを選択し「送る」もしくはアイコンでD&Dすると再生を始めます。
またアプリを起動して、エクスプローラからフォームに直接D&Dすると曲を演奏します。

よろしくお願いいたします。
2018/11/27(火) 12:16:28.81ID:e3+VQ8Az
例のお方か
まだやってたのはちょっとビックリ
2018/11/27(火) 15:00:40.58ID:/9xlS8t7
そうですよ。まだやってました。石の上にも3年と言う言葉もありますし
おかげさまで、プログラミング技法の第一巻の半分くらいまでは理解できるようになりました。
今度はちゃんと基礎からやり直したいと思います。

あげたファイルはアルファー版ほどの出来ですが、今の知識で作った物です。
ご興味がありましたら、ご評価をよろしくお願いいたします。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況