yRAD“‡ŠÂ‹«z Qt ‘ ..
[2ch|¥Menu]
295:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 09:47:34
>>294
>‚±‚±‚ÅA<CustomItem*>‚̂悤‚É<>‚É‚æ‚é‹Lq‚ðŽg‚Á‚Ä‚¨‚èA‚±‚ꂪ‚È‚¢‚ƃGƒ‰[‚ªo‚é‚̂ł·‚ªA
>‚È‚º•K—v‚Ȃ̂łµ‚傤‚©HiC++‚̕׋­•s‘«‚©‚à‚µ‚ê‚È‚¢Ž¿–â‚Å‚·‚ªAAAj
<>‚Ì’†‚ÉŒ^‚ðŽw’肵‚ÄA‚»‚ÌŒ^‚ɃLƒƒƒXƒg‚µ‚½‚¢‚±‚Æ‚ðAqgraphicsitem_cast‚É‹³‚¦‚邽‚߂̂à‚ÌB

>ƒwƒ‹ƒv‚É‚Í
>T qgraphicsitem_cast ( QGraphicsItem * item )
>Returns the given item cast to type T if item is of type T
>‚Æ‚ ‚èA‚Ç‚¤‚à—‰ð‚Å‚«‚Ü‚¹‚ñB‚æ‚낵‚­‚¨Šè‚¢‚µ‚Ü‚·B
ƒŠƒtƒ@ƒŒƒ“ƒX‚Ì‹Lq‚Ì‚µ‚©‚½‚ªA•ª‚©‚è‚É‚­‚¢‚¾‚¯‚¾‚ÆŽv‚¤B

ŒÂl“I‚ÈD‚Ý‚¾‚¯‚ê‚ǂނµ‚ë

T2* qgraphicsitem_cast<T1*>(QGraphicsItem * item)

‚Æ‘‚¢‚Ä‚ ‚Á‚ăLƒƒƒXƒg‚ÉŽ¸”s‚µ‚½‚Æ‚«T2‚ª0‚ɂȂèAƒLƒƒƒXƒg‚ɬŒ÷‚·‚邯T1=T2‚ɂȂéA‚Ý‚½‚¢‚É•\‹L‚µ‚Ä‚ ‚Á‚½•û‚ª
‚í‚©‚è‚â‚·‚¢‚ÆŽv‚¤B

‚¿‚Ȃ݂ÉA()‚ðŽg‚¤ƒLƒƒƒXƒg‚ÍACŒ¾Œê‚ÉŒ³X‚ ‚éƒLƒƒƒXƒg•û–@‚ÅAC++‚Å‚àŽg—p‚Å‚«‚éB
C++‚É‚ÍACŒ¾Œê‚ɂ͂Ȃ¢ƒLƒƒƒXƒg‚ª‚SŽí—Þ‚ ‚Á‚Ä‚»‚Ì‹Lq•û–@‚Å‚ÍAqgraphicsitem_cast‚̂悤‚ÉA<>‚ð—p‚¢‚éB
i‚½‚¾‚µA‚Ü‚Á‚½‚­‹@”\‚ªˆá‚¤‚Æ‚¢‚¤ˆÓ–¡‚ł͂Ȃ¢BC‚̃LƒƒƒXƒg‚Æ‹@”\‚ªd‚È‚Á‚Ä‚¢‚é‚à‚Ì‚à‚ ‚éBj

qgraphicsitem_cast‚âAqobject_cast‚ÍQt‚¾‚¯‚ÅŽg—p‚Å‚«‚éƒLƒƒƒXƒg‚ÅAŽg—p‚·‚é‘ÎÛ‚ªQObject‚Å‚ ‚Á‚½‚èAQGraphicsItem‚É
ŒÀ’肳‚ê‚Ä‚¢‚éB

296:295
09/10/22 09:58:05
’ù³A•â‘«B

>T2* qgraphicsitem_cast<T1*>(QGraphicsItem * item)
>‚Æ‘‚¢‚Ä‚ ‚Á‚ăLƒƒƒXƒg‚ÉŽ¸”s‚µ‚½‚Æ‚«T2‚ª0‚ɂȂèAƒLƒƒƒXƒg‚ɬŒ÷‚·‚邯T1=T2‚ɂȂéA‚Ý‚½‚¢‚É•\‹L‚µ‚Ä‚ ‚Á‚½•û‚ª
>‚í‚©‚è‚â‚·‚¢‚ÆŽv‚¤B
C++‚É‚ÍAƒ|ƒCƒ“ƒ^[‚â’Êí‚̕ϔ‚Ì‘¼‚ÉƒŠƒtƒ@ƒŒƒ“ƒX‚Æ‚¢‚¤‚Ì‚ª‚ ‚éB
‚±‚ê‚ðƒLƒƒƒXƒg‚·‚邯‚«‚É‚àŽg—p‚·‚é‰Â”\«‚ª‚ ‚é‚Ì‚ÅA*‚ð‚‚¯‚½—Ⴞ‚¯‚ð
ަ‚·‚̂͂܂¸‚¢‰Â”\«‚ª‚ ‚éB
­‚È‚­‚Æ‚àC++‚Ìdynamic_cast‚ÍAƒŠƒtƒ@ƒŒƒ“ƒX‚̃LƒƒƒXƒg‚ª‰Â”\‚ÅA
ƒLƒƒƒXƒg‚ÉŽ¸”s‚µ‚½‚Æ‚«‚Í—áŠO‚ðƒXƒ[‚·‚éB

qgraphicsitem_cast‚ªƒŠƒtƒ@ƒŒƒ“ƒX‚ɑΉž‚µ‚Ä‚¢‚é‚©‚Í–¢Šm”FB

297:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 11:26:31
>>294
<type T>

template

298:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 13:23:11
>>297
cast‚ÌT‚ÍAtemplate‚Æ‚¢‚¤ˆÓ–¡‚͂Ȃ¢‚̂łÍ?

299:298
09/10/22 13:24:40
’ù³
>cast‚ÌT‚ÍAtemplate‚Æ‚¢‚¤ˆÓ–¡‚͂Ȃ¢‚̂łÍ?
cast‚Ìtype T‚ÍAtemplate‚Æ‚¢‚¤ˆÓ–¡‚͂Ȃ¢‚̂łÍ?

300:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 15:13:44
iya
wakaran nonara ii

301:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 23:41:17
Qt Designerã‚ÅAƒtƒH[ƒ€‚É”z’u‚µ‚½ƒIƒuƒWƒFƒNƒg‚Ì
ƒVƒOƒiƒ‹‚ƕʂ̃VƒOƒiƒ‹‚ðÚ‘±‚·‚邱‚Ƃ͉”\‚Å‚·‚©H

Ž©•ª‚Å•û–@‚ð’T‚µ‚Ä‚àŒ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½B

302:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/22 23:44:49
>286
‚ ‚肪‚Æ‚¤B‘_‚¢’Ê‚è‚Ì“®ì‚ª‚Å‚«‚Ü‚µ‚½B

‚¿‚Ȃ݂ÉAstatusBar‚̓tƒH[ƒ€ƒGƒfƒBƒ^‚ÅMainWindow‚ðì‚邯A
ui‚Ì•û‚Ŷ¬‚³‚ê‚Ä‚¢‚Ü‚·‚ªAstatusBar‚ÉQLabel‚Ȃǂð’ljÁ‚·‚é‚Ì‚ÍA
ƒtƒH[ƒ€ƒGƒfƒBƒ^‚ł͂ł«‚È‚¢‚Å‚·‚æ‚ËH
MainWindow::createStatusBar()‚̂悤‚ÈŠÖ”‚ðŽ©ì‚µ‚ÄA
MainWindowƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Ìui->setupUi(this);‚ÌŒã‚ŌĂԂ悤‚È
ƒR[ƒh‚ªl‚¦‚ç‚ê‚邯Žv‚¤‚̂ł·‚ªA‚»‚ñ‚ÈŠ´‚¶‚ɂȂé‚Å‚µ‚傤‚©B

303:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 01:42:58
>>302
>‚¿‚Ȃ݂ÉAstatusBar‚̓tƒH[ƒ€ƒGƒfƒBƒ^‚ÅMainWindow‚ðì‚邯A
>ui‚Ì•û‚Ŷ¬‚³‚ê‚Ä‚¢‚Ü‚·‚ªAstatusBar‚ÉQLabel‚Ȃǂð’ljÁ‚·‚é‚Ì‚ÍA
>ƒtƒH[ƒ€ƒGƒfƒBƒ^‚ł͂ł«‚È‚¢‚Å‚·‚æ‚ËH
Žc”O‚È‚ª‚ç’m‚ç‚È‚¢B

>MainWindow::createStatusBar()‚̂悤‚ÈŠÖ”‚ðŽ©ì‚µ‚ÄA
>MainWindowƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Ìui->setupUi(this);‚ÌŒã‚ŌĂԂ悤‚È
>ƒR[ƒh‚ªl‚¦‚ç‚ê‚邯Žv‚¤‚̂ł·‚ªA‚»‚ñ‚ÈŠ´‚¶‚ɂȂé‚Å‚µ‚傤‚©B
‚»‚ê‚Å‚¢‚¢‚ÆŽv‚¤B
‚½‚¾A‘I‘ðŽˆ‚Æ‚µ‚ÄŠù‚É”z’u‚³‚ê‚Ä‚¢‚éstatusBar‚ðŠiã‚°‚µ‚ÄA
‚»‚̃\[ƒX‚©‚çQLabel‚ð’ljÁ‚·‚é•û–@‚ªl‚¦‚ç‚ê‚éB

304:287
09/10/23 03:17:16
>>295
‚È‚é‚Ù‚ÇAC++‚É‚Í<>‚ð—p‚¢‚éƒLƒƒƒXƒg‚Ì\•¶‚ª‚ ‚èA
ƒLƒƒƒXƒg‚Å‚Í펯‚Ȃ̂ł·‚ËB

Ú‚µ‚¢à–¾‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B
‘å•ϕ׋­‚ɂȂè‚Ü‚µ‚½B

305:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 08:27:05
‚Ë[‚æ

306:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 10:28:50
static_cast<>()
dynamic_cast<>()
const_cast<>()
reinterpret_cast<>()

307:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 13:19:12
Qt Creator‚ŃfƒoƒbƒO‚ðŠJŽn‚·‚邯AƒfƒoƒbƒOƒEƒBƒ“ƒhƒE‚Ì
ˆê”Ôã‚̃EƒBƒ“ƒhƒEƒo[‚É@‚S‚OŒÂ‚̃JƒXƒ^ƒ€ƒ_ƒ“ƒp‚ªŒ©‚‚©‚è‚Ü‚µ‚½B
‚Á‚Ä‚µ‚΂炭•\ަ‚³‚ê‚é‚ñ‚¾‚¯‚Ç
‚ ‚ê‚Á‚ĉ½‚̈Ӗ¡H


308:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 14:03:53
¡‚Ü‚ÅqDeleteAll()‚Ì‘¶Ý‚ð’m‚炸‚ÉA
–ˆ‰ñƒCƒeƒŒ[ƒ^‚ð‚®‚é‚®‚é‰ñ‚µ‚Ä‚½c

309:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 14:17:48
>>301
Qt Designerã‚ł͂ł«‚Ü‚¹‚ñB

310:301
09/10/23 15:24:33
>>309
ƒŒƒXA‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B

>Qt Designerã‚ł͂ł«‚Ü‚¹‚ñB
‚»‚¤‚Å‚·‚©A‚ ‚Ü‚èŽg‚í‚ê‚È‚¢‚©‚ç‚È‚ñ‚Å‚µ‚傤‚ËB

311:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 15:28:27
>>310
‚½‚܂Ɏg‚¢‚Ü‚·B

312:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 18:23:33
ƒvƒƒOƒ‰ƒ€‚Åstd::string‚ðŽg‚Á‚Ä‚¢‚Ü‚·‚ªAƒfƒoƒbƒO’†‚É
ƒ[ƒJƒ‹•Ï”‚Å“à—e‚ªŠm”F‚Å‚«‚Ü‚¹‚ñB
Šm”F‚·‚é•û–@‚͂Ȃ¢‚Å‚µ‚傤‚©B


313:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/23 21:40:54
>>312
Šm”F‚Å‚«‚È‚¢‚Æ‚¢‚¤‚Ì‚ÍA‹ï‘Ì“I‚ɂǂ̂悤‚È‚±‚Æ‚ð‚µ‚ÄA‚ǂ̂悤‚ɂȂÁ‚½‚̂łµ‚傤‚©B

‚à‚µAÅ“K‰»‚Ń[ƒJƒ‹•Ï”‚ª‚È‚­‚È‚Á‚ÄAƒfƒoƒbƒK‚Ń[ƒJƒ‹•Ï”‚ªŒ©‚¦‚È‚¢‚È‚ç‚ÎA
‚Ü‚Á‚½‚­Å“K‰»‚ª‚©‚©‚ç‚È‚¢‚悤‚ȃfƒoƒbƒOƒŒƒxƒ‹‚ŃRƒ“ƒpƒCƒ‹‚µ‚Ă݂Ă͂ǂ¤‚Å‚µ‚傤B

314:312
09/10/24 10:08:09
>313
std::pass = "test";
QString qpass = pass.c_str();
‚Æ‚·‚邯Aƒ[ƒJƒ‹•Ï”‚Í
¤pass
¤_M_dataplus
¤_M_p 0xXXXXX "$XXXXXX
¤*_M_p 36 '$'

qpass "test"
‚Ý‚½‚¢‚È


315:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 12:47:38
>>314
>std::pass = "test";
‚±‚ê‚Í
std::string pass = "test";
‚̃^ƒCƒ|‚¾‚æ‚ËB

‚±‚¿‚ç‚ÍLinux/X11 g++‚¾‚¯‚ÇA–â‘è‚È‚­ƒfƒoƒbƒO‚Å‚«‚邯‚ÇB

316:315
09/10/24 12:51:26
OS‚âƒRƒ“ƒpƒCƒ‰[‚âIDEiŽg‚Á‚Ä‚¢‚é‚È‚çj‚͉½H


317:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 14:37:13
>>314
std::string‚ðtypedef‚µ‚Ä‚¢‚È‚¢H

318:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 14:50:10
>>317
>>314‚Ƃ͕Êl‚Å‚·‚ªB

std–¼‘O‹óŠÔ‚Ì’†‚ÉV‚µ‚¢typedef‚ðì‚é‚Ì‚Í
–¢’è‹`‚Ì“®ì‚Å‚ÍH



319:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 15:26:23
QGraphicsScene‚ÉaddPixmap‚µ‚ÄQGraphicsView::setScene()‚ʼn摜‚ð•\ަ‚µ‚Ä‚¢‚é‚̂ł·‚ªA
‰æ‘œ‚ª^‚ñ’†‚É•\ަ‚³‚ê‚Ü‚·B
‚±‚Ìê‡AGraphicsView‚ðƒ}ƒEƒXƒNƒŠƒbƒN‚µ‚½À•W‚Æpixmap‚̉摜À•W‚̑ΉžŠÖŒW‚ÍA
‚ǂ̂悤‚ɂȂé‚̂łµ‚傤‚©H

QGraphicsView, Item‚ ‚½‚è‚̃wƒ‹ƒv‚ð“Ç‚ñ‚ł݂½‚̂ł·‚ªA‚¢‚Ü‚¢‚¿ŠT—v‚ª”cˆ¬‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B

320:317
09/10/24 15:37:33
>>318
>std–¼‘O‹óŠÔ‚Ì’†‚ÉV‚µ‚¢typedef‚ðì‚é‚Ì‚Í
>–¢’è‹`‚Ì“®ì‚Å‚ÍH
‚±‚ê‚͂ǂ¤‚¢‚¤ˆÓ–¡?

‚±‚¿‚炪317‚Å‚¢‚¢‚½‚©‚Á‚½‚Ì‚ÍA314‚Ìl‚ª

typedef std::string StringT;
//...
StringT aString("test");
std::cout << aString << std::endl;

‚ȂǂƂµ‚Ä‚¢‚é‚̂ł͂Ȃ¢‚Ì‚©A‚Æ‚¢‚¤‚±‚Ƃ𕷂«‚½‚©‚Á‚½‚ñ‚¾‚¯‚ÇB
‚±‚ê‚Á‚Ä–¢’è‹`?

321:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 16:12:34
‚±‚ê‚łǂ¤B
QMessageBox(QMessageBox::NoIcon, "title", "text").exec();


322:314
09/10/24 16:44:39
‚·‚¢‚Ü‚¹‚ñ
std::sritng pass ‚Å‚µ‚½B
Debian ‚Å@QtCreator‚ðŽg‚Á‚Ă܂·B
ƒfƒoƒbƒO‚Í–â‘è‚È‚­‚Å‚«‚é‚ñ‚Å‚·‚ªAƒ[ƒJƒ‹•Ï”‚Ì•\ަ‚Å
std::string pass ‚Í@“à—e‚ªƒoƒPƒe•\ަ‚³‚ê
QString qpass ‚Í‚»‚̂܂ܳ‚µ‚­•\ަ‚³‚ê‚Ü‚·B
std::string ‚Ì•¶Žš‰»‚¯H‚ð‰½‚Æ‚©‚Å‚«‚È‚¢‚©‚ÆŒ¾‚¤‚±‚Ƃł·B
•´‚ç‚킵‚­‚ÄA‚·‚¢‚Ü‚¹‚ñB


323:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 18:07:04
>>322
‚±‚¿‚ç‚àDebian GNU/Linux‚ÅQt Creator‚ðŽg—p‚µ‚Ă邯‚ÇA
•¶Žš‰»‚¯‚Í‚µ‚Ä‚¢‚È‚¢B

debian‚̃pƒbƒP[ƒW”ł̈À’è”ÅQt Creator 1.2.1‚ð
# aptitude -t sid install qtcreator
‚ŃCƒ“ƒXƒg[ƒ‹‚µ‚½‚â‚‚¾‚¯‚ÇB

ˆê“x‚»‚̃oƒO‚ªÄŒ»‚·‚éƒVƒ“ƒvƒ‹‚ȃR[ƒh‚ðì‚Á‚ÄA
ƒRƒ“ƒ\[ƒ‹ã‚ÅAgdb‚ð’¼ÚŽg‚Á‚Ä‚à•¶Žš‰»‚¯‚µ‚È‚¢‚©
Šm‚©‚ß‚ê‚΂¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB
E–{“–‚É–â‘è‚ð‹N‚±‚µ‚Ä‚¢‚é•”•ª‚ª“Á’è‚Å‚«‚éB(Qt Creator‚Å)
EQt Creator‚Ì–â‘è‚Ȃ̂©‚ª‚í‚©‚éB
ƒGƒ‰[‚ÌŒ´ˆö‚ði‚邽‚߂ɂ±‚Ì‚±‚Ƃ͗LŒø‚¾‚ÆŽv‚¤‚¯‚ÇB

324:323
09/10/24 18:11:36
‚à‚µA‚»‚ê‚ÅQt Creator‚ªŒ´ˆö‚łȂ¢‚Æ•ª‚©‚Á‚½‚̂ȂçA
ˆá‚¤ƒXƒŒ‚É‚à‚Á‚ÆÚ‚µ‚¢l‚ª‚¢‚é‚©‚à‚µ‚ê‚È‚¢B
‚»‚¿‚ç‚Å•·‚­‚Ì‚à‚¢‚¢‚ÆŽv‚¤B

325:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 18:30:30
>>314
debugging helper ‚Í enableH

326:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 19:30:58
>>319
QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent*)
‚âQGraphicsSceneMouseEvent::lastScenePos() ‚𒲂ׂĂ݂Ă͂ǂ¤‚Å‚µ‚傤‚©B

327:322
09/10/24 19:57:56
‘å•ÏŽ¸—ç‚¢‚½‚µ‚Ü‚µ‚½B
•¶Žš‰»‚¯•\ަ‚͕ʂ̌´ˆö‚¾‚Á‚½‚Ý‚½‚¢‚Å‚·B
‚½‚¾A
QString qpass = pass.c_str();
‚Åqpass‚ª³í•\ަ‚¾‚Á‚½‚½‚߂ĂÁ‚«‚è
‰ü‚ß‚ÄA‚±‚Ì•”•ª‚¾‚¯ƒeƒXƒgƒvƒƒOƒ‰ƒ€‘‚¢‚Ă݂½‚ç³í‚É•\ަ‚³‚ê‚Ü‚µ‚½B


328:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/24 23:59:41
>326
‚Ƃ肠‚¦‚¸QGraphicsView::mousePressEvent(QMouseEvent* event)‚Å
if (QGraphicsItem *item = itemAt(event->pos()))
{
qDebug() << item->pos();
}
‚ŒljÁ‚µ‚½QGraphicsItem‚ŃQƒbƒg‚Å‚«‚邱‚Æ‚ª‚í‚©‚è‚Ü‚µ‚½B
‚½‚¾Aitem->pos()‚ª‚¨‚»‚ç‚­Viewã‚Åitem‚ª’ljÁ‚³‚ꂽÀ•W‚Å(0, 0)‚ƂȂè‚Ü‚·B
’m‚肽‚¢‚Ì‚ÍitemƒIƒuƒWƒFƒNƒg“à‚Å‚ÌÀ•W‚Ȃ̂ł·‚ªA
‚±‚ê‚ð’m‚é‚É‚ÍAQGraphicsItem‚©‚ç”h¶‚µ‚½ƒNƒ‰ƒX‚ÌmousePressEvent()‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
À•W‚𓾂邵‚©‚È‚¢‚̂łµ‚傤‚©B


329:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 01:49:42
>>328
>‚±‚ê‚ð’m‚é‚É‚ÍAQGraphicsItem‚©‚ç”h¶‚µ‚½ƒNƒ‰ƒX‚ÌmousePressEvent()‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
>À•W‚𓾂邵‚©‚È‚¢‚̂łµ‚傤‚©B
‚»‚ê‚Å‚¢‚¢‚ÆŽv‚¤‚¯‚ÇB
‚ ‚Æ‚ÍAƒAƒCƒeƒ€‚ɃAƒCƒeƒ€—p‚̃Cƒxƒ“ƒgƒtƒBƒ‹ƒ^[‚ðƒVƒ“ƒXƒg[ƒ‹‚·‚é‚©B

330:329
09/10/25 02:01:16
’ù³
>‚ ‚Æ‚ÍAƒAƒCƒeƒ€‚ɃAƒCƒeƒ€—p‚̃Cƒxƒ“ƒgƒtƒBƒ‹ƒ^[‚ðƒVƒ“ƒXƒg[ƒ‹‚·‚é‚©B
‚ ‚Æ‚ÍAƒAƒCƒeƒ€‚ɃAƒCƒeƒ€—p‚̃Cƒxƒ“ƒgƒtƒBƒ‹ƒ^[‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚©B

ƒAƒCƒeƒ€—p‚̃Cƒxƒ“ƒgƒtƒBƒ‹ƒ^[‚ÍAƒAƒCƒeƒ€‚ª‘¼‚̃AƒCƒeƒ€‚̃Cƒxƒ“ƒg‚ðƒtƒBƒ‹ƒ^[‚·‚é
‚©‚çA¡‚Ìꇂ͖ð‚É—§‚½‚È‚¢‚©‚àB

331:329
09/10/25 02:19:56
•â‘«

Šî–{“I‚Ƀrƒ…[‚ÍAƒEƒBƒWƒbƒg‚Æ‚µ‚ăAƒCƒeƒ€‚âƒV[ƒ“‚É‚ð•`‰æ‚·‚é–ð–Ú‚ÆA
ƒV[ƒ“‚ÖƒCƒxƒ“ƒg‚ð“`‚¦‚é–ð–Ú‚ð‚ɂȂ¤B

‚¾‚©‚çƒrƒ…[‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚Ä‚·‚邯‚«‚ÍA
Žå‚ÉAŒ©‚½–Ú‚ÉŠÖ‚·‚邱‚Æ‚âAƒCƒxƒ“ƒg‚ðƒV[ƒ“‚É“`‚¦‚é–ð–Ú‚Æ‚µ‚Ă̈—‚ð
‘‚¯‚΂¢‚¢‚ÆŽv‚¤B
•¶Žš’Ê‚èƒrƒ…[ƒEƒBƒWƒbƒg‚Æ‚µ‚Ă̖ðŠ„B

ƒV[ƒ“‚É‚ÍAƒƒWƒJƒ‹À•W‚ð’ñ‹Ÿ‚µA”wŒi‚ÌÝ’è‚ð’ñ‹Ÿ‚·‚éB
ƒAƒCƒeƒ€‚ÌƒŠƒXƒg‚ðŽ‚Á‚Ä‚¢‚Ä‚±‚ê‚ðŠÇ—‚·‚éB
‚Ü‚½ƒrƒ…[‚©‚ç“`’B‚³‚ꂽƒCƒxƒ“ƒg‚ðƒAƒCƒeƒ€‚É“`‚¦‚éB
‚¾‚©‚çAƒV[ƒ“‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
ƒAƒCƒeƒ€‚Ì‹¤’ʂ̃Cƒxƒ“ƒg‚ÍA‚±‚¿‚ç‚ň—‚·‚ê‚΂¢‚¢‚ÆŽv‚¤B
ƒV[ƒ“‚ÍQObject‚¾‚©‚çAƒV[ƒ“QApplication::sendEvent()
‚Å’¼ÚƒCƒxƒ“ƒg‚𑗂邱‚Æ‚à‚Å‚«‚éB

ƒAƒCƒeƒ€‚Í‚»‚ꂼ‚ꂪ‚»‚ꂼ‚ê‚ÌU‚é•‘‚¢‚ª‚ ‚é‚©‚çA
ƒAƒCƒeƒ€Ž©g‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
‚»‚̃AƒCƒeƒ€“ÆŽ©‚ÌU‚é•‘‚¢‚Í‚»‚±‚Å‘‚¯‚΂¢‚¢‚ÆŽv‚¤B

332:329
09/10/25 02:23:58
’ù³B‚¢‚‚à’ù³‚΂©‚è‚Å‚²‚ß‚ñB

>Šî–{“I‚Ƀrƒ…[‚ÍAƒEƒBƒWƒbƒg‚Æ‚µ‚ăAƒCƒeƒ€‚âƒV[ƒ“‚É‚ð•`‰æ‚·‚é–ð–Ú‚ÆA
Šî–{“I‚Ƀrƒ…[‚ÍAƒEƒBƒWƒbƒg‚Æ‚µ‚ăAƒCƒeƒ€‚âƒV[ƒ“‚ð•`‰æ‚·‚é–ð–Ú‚ÆA

>ƒV[ƒ“‚ÍQObject‚¾‚©‚çAƒV[ƒ“QApplication::sendEvent()
ƒV[ƒ“‚ÍQObject‚¾‚©‚çAƒV[ƒ“‚ÉQApplication::sendEvent()

333:329
09/10/25 03:33:00
>>329
–{“–‚É‚²‚ß‚ñB329‚𒼂µ‚Ă݂½B

Šî–{“I‚Ƀrƒ…[‚̓EƒBƒWƒbƒg‚Æ‚µ‚ÄAƒAƒCƒeƒ€‚âƒV[ƒ“‚ð•`‰æ‚·‚é–ð–Ú‚ÆA
ƒV[ƒ“‚ÖAƒCƒxƒ“ƒg‚ð“`‚¦‚é–ð–Ú‚ð’S‚¤B

‚¾‚©‚çƒrƒ…[‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚Ä‚·‚邱‚Æ‚ÍA
Žå‚ÉAŠg‘åk¬‚Ȃǂ̌©‚½–Ú‚ÉŠÖ‚·‚邱‚Æ‚ð‘€ì‚µ‚½‚èAƒCƒxƒ“ƒg‚ðƒV[ƒ“‚É“`‚¦‚é–ð–Ú
‚Æ‚µ‚Ă̈—‚𑂯‚΂¢‚¢‚ÆŽv‚¤B•¶Žš’Ê‚èƒrƒ…[ƒEƒBƒWƒbƒg‚Æ‚µ‚Ă̖ðŠ„B

ƒV[ƒ“‚ÍAƒƒWƒJƒ‹À•W‚ð’ñ‹Ÿ‚µA”wŒi‚ÌÝ’è‚ð’ñ‹Ÿ‚·‚éB
ƒV[ƒ“‚̓AƒCƒeƒ€‚ÌƒŠƒXƒg‚ðŽ‚Á‚Ä‚¢‚Ä‚±‚ê‚ðŠÇ—‚·‚éB
‚Ü‚½ƒrƒ…[‚©‚ç“`’B‚³‚ꂽƒCƒxƒ“ƒg‚ðƒAƒCƒeƒ€‚É“`‚¦‚éB
‚¾‚©‚çAƒV[ƒ“‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
ƒAƒCƒeƒ€‚Ì‹¤’ʂ̈—‚ÍA‚±‚¿‚ç‚Å‘‚¯‚΂¢‚¢‚ÆŽv‚¤B
‚à‚¿‚ë‚ñA‚»‚Ì’†‚ŃAƒCƒeƒ€ƒŠƒXƒg‚ðƒCƒeƒŒ[ƒg‚µ‚Ä
ƒAƒCƒeƒ€‚̃ƒ\ƒbƒh‚ðƒR[ƒ‹‚µ‚Ä‚à‚æ‚¢B
ƒV[ƒ“‚ÍQObject‚¾‚©‚çAƒV[ƒ“‚ÉQApplication::sendEvent()
‚Å’¼ÚƒCƒxƒ“ƒg‚𑗂邱‚Æ‚à‚Å‚«‚éB

ƒAƒCƒeƒ€‚É‚ÍA‚»‚ꂼ‚ꂪ‚»‚ꂼ‚ê‚ÌU‚é•‘‚¢‚ª‚ ‚é‚©‚çA
ƒAƒCƒeƒ€Ž©g‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
‚»‚̃AƒCƒeƒ€“ÆŽ©‚ÌU‚é•‘‚¢‚Í‚»‚±‚Å‘‚¯‚΂¢‚¢‚ÆŽv‚¤B

334:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 08:28:58
Windows‚Ågcc‚Ævisual c++Žg‚Á‚Ä‚p‚”ƒrƒ‹ƒh‚µ‚Ă݂½‚Ì‚¾‚¯‚ÇA
ƒfƒ‚‚Ì“®‚«‚Í‚u‚b‚Ì•û‚ª–¾‚ç‚©‚É‘‚¢B

335:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 08:58:06
>>334

“¯‚¶‚­B>>74 ‚ÅAVC++‚Ì•û‚ª‘¬‚¢‚Ì‚ÍA‚Ç‚¤‚µ‚Ä‚¾‚낤‚©B

336:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 09:03:39
C‚æ‚èJava‚Ì•û‚ª‘‚¢A‚Æ“¯‚¶˜b
‚à‚µ‚­‚Í‚»‚êˆÈ‰º‚Æ‚µ‚©Žv‚¦‚È‚¢‰´

ƒoƒCƒiƒŠƒTƒCƒY‚à“¯‚¶ƒ\[ƒX‚©‚Æ‹^‚¢‚½‚­‚Ȃ邮‚ç‚¢”ì‘å‚·‚邵

337:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 09:32:48
>>335‚Å‚·BŠÔˆá‚¦‚Ü‚µ‚½B>>74 ‚Å‚ÍAGCC ‚Ì•û‚ª‘¬‚¢‚Æ‚¢‚¤‚Ì‚ª•ª‚©‚è‚Ü‚¹‚ñB
VC++‚Ńrƒ‹ƒh‚µ‚½Qt‚Ì•û‚ªAƒfƒ‚‚Ì“®‚«‚ª‘¬‚¢‚ÆŒ©‚Ä•ª‚©‚è‚Ü‚·B

338:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 10:05:06
ŽÀÛ‚ÉQt‚ÉŠÖ‚µ‚ÄGCC‚Ì•û‚ª‘¬‚©‚Á‚½A‚Á‚Äl‚Ío‚ĂȂ¢‚ñ‚¾‚µA‹C‚É‚µ‚È‚¢‚Å‚¢‚¢‚ñ‚¶‚á‚Ë

339:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 10:05:56
>>337
>>74 ‚̓lƒ^‚Å‚·B’Þ‚ç‚ê‚È‚¢‚悤‚ÉB

340:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 10:09:55
‚»‚à‚»‚àGCC‚̂ق¤‚ª‘‚¢‚È‚çQt Creator‚ª‚¢‚¿‚¢‚¿VC‚Ńrƒ‹ƒh‚³‚ê‚Ă闗R‚ª‚È‚¢‚µ‚È

341:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 11:01:17
‚È‚ñ‚ÅVCƒrƒ‹ƒh”Å‚ðƒtƒŠ[‚Åo‚µ‚Ä‚­‚ê‚È‚¢‚Ìi„ƒj

342:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 12:56:04
>>341
‚½‚Ô‚ñƒ‰ƒCƒZƒ“ƒX‚ÌŠÖŒW‚¶‚á‚ËH

343:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 15:38:35
Šùo‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ªAQLineEdit‚Å“ú–{Œê“ü—Í(ATOK)’†‚ÉESC‚ð‰Ÿ‚·‚ÆIME
‚ł͂Ȃ­ƒ_ƒCƒAƒƒO‚𔲂¯‚é‚Ì‚ÅA‚»‚ê‚܂Ŋm’肵‚½“à—e‚ªÁ‚¦‚Ä‚µ‚Ü‚¢‚Ü‚·B
“ü—Í’†‚¾‚Á‚½•¶Žš‚Í‚»‚̂܂܂Ìó‘Ô‚ÅÁ‚¦‚½ƒ_ƒCƒAƒƒO‚Ìe‚És‚«‚Ü‚·B

IME“ü—Í’†‚ÌESCƒL[‚ªIME‚̃EƒBƒ“ƒhƒEH‚É”ò‚΂¸‰º‚ÌQDialog or QLineEdit‚É
”ò‚ñ‚Å‚¢‚邿‚¤‚ÉŒ©‚¦‚Ü‚·‚ª‚ªA‰ñ”ð‚·‚é‚ɂ͂ǂ±‚ðŒ©‚½‚ç‚¢‚¢‚Å‚µ‚傤‚©B

344:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 15:43:34
>>343
Windows‚ÆMac OS X‚̂ǂ¿‚ç‚Å‚·‚©B

345:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 15:45:26
>>344
ATOK‚ÌLinux‚à‚ ‚é‚Ì‚ÅA3‚‚̓à‚̂ǂê‚Å‚µ‚傤‚©B

346:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 15:46:28
IME ‚Á‚Ä Windows —pŒê‚Å‚µ‚åB

347:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:02:11
SCIM-AnthyŽg‚Á‚Ă邯‚Ç‚»‚ñ‚ÈŽ–‚È‚Á‚½‚±‚Æ–³‚¢‚È‚Ÿ

348:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:08:30
Qt ‚â‚é‚È‚ç wxWidget ‚̃XƒŒ‚à“Ç‚ñ‚¾•û‚ª—Ç‚¢

349:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:10:27
s ‚ª”²‚¯‚½c

Qt ‚â‚él‚Í wxWidgets ‚̃XƒŒ‚àŒ©‚És‚Á‚½•û‚ª—Ç‚¢‚æ

350:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:50:42
‚È‚ñ‚ÅH
Qt‚Æ”ä‚ׂ½‚çwx‚Æ‚©Žg‚¢‚É‚­‚­‚ÄŽd•û‚ª‚È‚¢‚¶‚á‚ñ
’m‚鉿’l‚È‚¢‚ÆŽv‚¤

351:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:53:03
>>343
QWidget(QDialog‚ðŠÜ‚Þ)‚ɃtƒH[ƒJƒX‘®«‚ª‚ ‚é‚©‚çA
‚±‚̃tƒH[ƒJƒXŠÖŒW‚Ì‘®«‚ðƒZƒbƒg‚·‚ê‚Î
‚¢‚¢‚Ì‚©‚à‚µ‚ê‚È‚¢‚ñ‚¾‚¯‚ǂ悭’m‚ç‚È‚¢‚©‚çAŽv‚¢‚‚­•û–@‚ð—ñ‹L‚·‚éB

(1) QLineEdit‚̃JƒXƒ^ƒ€ƒNƒ‰ƒX‚ð‘‚¢‚ăL[ƒCƒxƒ“ƒg‚ðƒnƒ“ƒhƒ‹‚µ‚Ä
ESCƒL[‚̂Ƃ«‚ÍAaccept()‚µ‚ÄAeƒEƒBƒWƒbƒg‚Å‚ ‚éƒ_ƒCƒAƒƒO‚É
ƒCƒxƒ“ƒg‚ð“`‚¦‚È‚¢‚悤‚É‚·‚éB

(2) ‚Ü‚½‚ÍAQLineEdit‚ɃCƒxƒ“ƒgƒtƒBƒ‹ƒ^[‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚ÄA
“¯—l‚̈—‚ð‚·‚éB

(3) ƒfƒUƒCƒ“ƒtƒH[ƒ€(Qt Designer‚Ü‚½‚ÍQt Creator‚É‘g‚Ýž‚܂ꂽ‚à‚Ì)‚ðŽg—p‚µ‚Ä‚¢‚é‚̂Ȃç
QLineEdit‚ðŠiã‚°‚µ‚ÄA‚»‚±‚Å“¯—l‚̈—‚ð‚·‚éB

(4) ‚ ‚é‚¢‚ÍAƒ_ƒCƒAƒƒO‚̃L[ƒCƒxƒ“ƒg‚ðƒnƒ“ƒhƒ‹‚µ‚ÄAlineEdit->hasFocus()‚µ‚ÄA
QLineEdit‚ɃtƒH[ƒJƒX‚ª“–‚½‚Á‚Ä‚¢‚邯‚«‚ÍAESCƒL[‚ɑ΂µ‚ăfƒtƒHƒ‹ƒg‚Ì
U‚é•‘‚¢‚ð‚µ‚È‚¢‚悤‚É‚·‚éB

352:351
09/10/25 16:54:06
>>351 ‚̂‚«

i4j‚Ì—á
void
Dialog::keyPressEvent(QKeyEvent* keyEvent)
{
if(keyEvent->key() == Qt::Key_Escape) {
if(ui->lineEdit->hasFocus()) {
keyEvent->accept();
}
} else {
QDialog::keyPressEvent(keyEvent);
}

}

(’ˆÓ)
‚¿‚Ȃ݂ÉAƒLƒƒƒ“ƒZƒ‹ƒ{ƒ^ƒ“‚ª”z’u‚³‚ê‚Ä‚¢‚邯‚«‚ÍA‚»‚̃{ƒ^ƒ“‚ªESCƒL[‚ɑΉž‚µ‚Ä‚¢‚é‰Â”\«‚à‚ ‚éB
‚½‚¾‚µAQLineEdit‚ɃtƒH[ƒJƒX‚ª“–‚½‚Á‚Ä‚¢‚邯‚«‚ɂǂ¤‚Ȃ̂©‚Í–¢Šm”FB

353:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:55:26
>>650
‚È‚ñ‚ÅH
wx‚Æ”ä‚ׂ½‚çQt‚Æ‚©Žg‚¢‚É‚­‚­‚ÄŽd•û‚ª‚È‚¢‚¶‚á‚ñ

354:351
09/10/25 16:56:21
–ˆ“x‚·‚¢‚Ü‚¹‚ñB’ù³
>if(ui->lineEdit->hasFocus()) {
if(lineEdit->hasFocus()) {

355:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 16:58:18
>>350
‚»‚¤–ÑŒ™‚¢‚¹‚¸‚ÉŽ‹–ì‚ÍL‚­Ž‚Á‚½•û‚ª—Ç‚¢‚æB
‚Ü‚ŸŒ©‚És‚¯‚Εª‚©‚邳B

356:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:01:28
>(4) ‚ ‚é‚¢‚ÍAƒ_ƒCƒAƒƒO‚̃L[ƒCƒxƒ“ƒg‚ðƒnƒ“ƒhƒ‹‚µ‚ÄAlineEdit->hasFocus()‚µ‚ÄA
>QLineEdit‚ɃtƒH[ƒJƒX‚ª“–‚½‚Á‚Ä‚¢‚邯‚«‚ÍAESCƒL[‚ɑ΂µ‚ăfƒtƒHƒ‹ƒg‚Ì
>U‚é•‘‚¢‚ð‚µ‚È‚¢‚悤‚É‚·‚éB

IME“ü—̓‚[ƒh‚ɂȂÁ‚Ă邯‚«‚ÉŒÀ‚邱‚Æ‚Á‚Äo—ˆ‚Ü‚·‚©H

357:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:04:52
E‰½‚ª‚µ‚½‚¢‚Ì‚©
EŒ»ó‚Ç‚¤‚È‚Á‚Ä‚¢‚é‚Ì‚©
E‚»‚ê‚ɑ΂·‚鎩•ª‚̈ӌ©
EŽ©•ª‚̊‹«‚͉½‚Ȃ̂©iOS,CPU,GPU)
EIME‚𑼂̂à‚̂ɂµ‚Ä“¯‚¶Ç󂪂 ‚é‚Ì‚©‚Ç‚¤‚©A‚È‚¢‚Ȃ炻‚ÌIME‚͉½‚Ȃ̂©B

E‰Â”\‚È‚çƒTƒ“ƒvƒ‹‚ðƒAƒbƒvƒ[ƒ_[‚ÉB

‚±‚Ì‚­‚ç‚¢‚ÍŽ¿–â‚·‚é‚È‚çî•ñ‚Æ‚µ‚Ä—~‚µ‚¢‚íB

358:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:05:15
>>355
Ž^¬B
‚»‚ꂼ‚ê‚É’·ŠA’ZŠ‚ ‚é‚©‚çˆêŠT‚É‚¢‚¦‚È‚¢‚ÆŽv‚¤B

359:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:09:27
wxƒXƒŒ‚È‚ñ‚ÄQt‚̘b‘肪o‚Är‚ê‚Ä‚½‚悤‚È‹L‰¯‚µ‚©‚È‚¢‚ñ‚¾‚ª
‚ÅA‚È‚ñ‚Å‚¢‚«‚È‚èwx‚̘b‘肪o‚½‚ÌH
Qt Creator‚ªn‚ê‚ĂȂ¢‚Æ‚©‚»‚¤‚¢‚¤˜b‘è‚©‚çH

360:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:10:45
>>359
wx ƒXƒŒ‚ðŒ©‚És‚¯‚Εª‚©‚éB

361:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:12:42
•·‚«“¦‚°H

362:351
09/10/25 17:14:21
>>356
ƒCƒ“ƒvƒbƒgƒƒ\ƒbƒhƒCƒxƒ“ƒg‚ðƒnƒ“ƒhƒ‹‚·‚ê‚΂ł«‚»‚¤B
inputMethodEvent()‚ðƒI[ƒo[ƒ‰ƒCƒh‚·‚ê‚΂悢B
‚½‚¾AŽ„‚ÍŽg—p‚µ‚½‚±‚Ƃ͂Ȃ¢‚Ì‚ÅA‹ï‘Ì“I‚ɂǂ¤‚·‚ê‚΂¢‚¢‚©‚Í
‚͂킩‚ç‚È‚¢B

363:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:17:05
>>360
‹vX‚ÉŒ©‚Ä‚«‚½‚ª
IDE‹c˜_‚Æwx‚ÌVIDEA‚ ‚Æ‚ÍQt‘¼ƒ‰ƒCƒuƒ‰ƒŠ‚Ƃ̔äŠr‚®‚ç‚¢‚µ‚©‚±‚ê‚Æ‚¢‚Á‚½‚à‚̂͂Ȃ©‚Á‚½
‚à‚¤­‚µ‹ï‘Ì“I‚É‘‚¢‚Ä‚­‚ê

364:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:23:55
>>363
ÅV10ƒŒƒXˆÊ‚ðŒ©‚½‚¾‚¯‚Å‚à‰½‚©‹C•t‚­‚à‚ñ‚¾‚ÆŽv‚¤‚ªc
•ʂɓä‚È‚¼‚µ‚Ä‚é–ó‚¶‚á‚È‚¢‚©‚çA–{“–‚É•ª‚©‚ç‚È‚¢‚È‚çƒXƒ‹[‚µ‚Ä‚­‚êB
>>349‚ð‘‚¢‚½‚Ì‚ÍeØS‚̂‚à‚肾‚Á‚½‚ªAŽ×–‚‚µ‚Ĉ«‚©‚Á‚½‚ÈB

365:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:31:20
IME‚ª‚ç‚݂̘b‚Á‚Ä‚±‚ÆH

366:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:35:09
>>357
>IME‚𑼂̂à‚̂ɂµ‚Ä“¯‚¶Ç󂪂 ‚é‚Ì‚©‚Ç‚¤‚©A‚È‚¢‚Ȃ炻‚ÌIME‚͉½‚Ȃ̂©B
“Á‚É‚±‚ꂾ‚ÆŽv‚¤BATOK‚ªˆ«‚³‚ð‚µ‚Ä‚¢‚é‚©AATOK‚É“n‚·‚ׂ«ƒL[ƒCƒxƒ“ƒg‚ð
Qt‚ªH‚Á‚Ä‚¢‚é‚©BATOK—‚݂łÍA–â‘肪‚ ‚Á‚½‚è‚·‚é‚Ì‚©B

‚Ç‚Á‚¿‚àŒÃ‚ß‚¾‚¯‚ê‚ÇB

URLØÝ¸(www.kde.gr.jp)

ATOK/ˆê‘¾˜Y “‡ƒXƒŒƒbƒh[ ‚»‚Ì2 ]
½ÚØÝ¸(linux”Â)

367:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 17:41:53
>>366
‚±‚¿‚ç‚ÍADebian GNU/Linux ã‚Å Qt immodule/anthy‚Å“ú–{Œê“ü—Í‚µ‚Ä‚¢‚邯‚ê‚ÇA
“¯‚¶‚悤‚ÉA“ú–{Œê“ü—Í’†‚ÉESC‚ð‰Ÿ‚·‚ƃ_ƒCƒAƒƒO‚ª•‚¶‚邿B

368:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 18:01:00
>>367
kinput2‚ÍA“ú–{Œê“ü—Í’†‚ÉESC‚ð‰Ÿ‚µ‚Ä‚àƒ_ƒCƒAƒƒO‚ª•‚¶‚Ü‚¹‚ñ‚Å‚µ‚½B

369:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 18:15:11
QDialog::reject‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚Ä
Œ‚̃eƒLƒXƒgƒ{ƒbƒNƒX‚ɃtƒH[ƒJƒX‚ª‚ ‚éŠÔ‚Íesc‚ð‰Ÿ‚µ‚Ä‚àQDialog‚Ìreject()‚ªŒÄ‚΂ê‚È‚¢‚悤‚É‚·‚é
‚Á‚Ă̂͂ǂ¤‚©
class ‚È‚ñ‚© : public QDialog, ...
{
void reject() {
if (! lineEdit->hasFocus()) QDialog::reject();
}
};

ŽQl:
Qt-interest Archive - QDialog and ESC
URLØÝ¸(lists.trolltech.com)

370:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 18:19:57
ª
‚ AŒä–ƃXƒ‹[‚µ‚Ä...

371:367
09/10/25 18:34:14
>>368
>>343 ‚̈Ӗ¡‚ðŽæ‚èˆá‚¦‚Ä‚¢‚½‚©‚à‚µ‚ê‚È‚¢B

>Šùo‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ªAQLineEdit‚Å“ú–{Œê“ü—Í(ATOK)’†‚ÉESC‚ð‰Ÿ‚·‚ÆIME
>‚ł͂Ȃ­ƒ_ƒCƒAƒƒO‚𔲂¯‚é‚Ì‚ÅA‚»‚ê‚܂Ŋm’肵‚½“à—e‚ªÁ‚¦‚Ä‚µ‚Ü‚¢‚Ü‚·B
‚±‚Ìu“ú–{Œê“ü—Í’†v‚Æ‚¢‚¤‚Ì‚ÍA•ÏŠ·Šm’è‘O‚Ì“ú–{Œê“ü—Í’†‚Æ‚¢‚¤‚±‚ƂȂÌB
‚»‚ê‚Æ‚àA“ú–{Œê“ü—̓‚[ƒh‚ɂȂÁ‚Ä‚¢‚邯‚«‚Æ‚¢‚¤‚±‚ƂȂÌB
>>367 ‚Åo‚éÇó‚ÍŒãŽÒ‚Ì‚±‚Æ‚ð‚¢‚Á‚Ä‚¢‚é‚Ì‚ÅA
Ž¿–âŽÒ‚ª‘OŽÒ‚̈Ӗ¡‚Ì‚±‚Æ‚ð‚¢‚Á‚Ä‚¢‚é‚̂ȂçA
Ž„‚̊‹«‚Å‚àƒ_ƒCƒAƒƒO‚ª•‚¶‚È‚¢‚Æ‚¢‚¤‚±‚ƂɂȂéB
˜b‚ð‚â‚₱‚µ‚­‚µ‚Ä‚²‚ß‚ñB

372:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 18:58:27
>‚±‚Ìu“ú–{Œê“ü—Í’†v‚Æ‚¢‚¤‚Ì‚ÍA•ÏŠ·Šm’è‘O‚Ì“ú–{Œê“ü—Í’†‚Æ‚¢‚¤‚±‚ƂȂÌB

‚Å‚·

373:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 18:59:10
>>371
•¶Žš—ñ‚ªŠm’肵‚Ä‚¢‚邯‚«‚ÉA“ú–{Œê“ü—̓‚[ƒh‚©‚Ç‚¤‚©‚ÉS‚炸AESC‚Ń_ƒCƒAƒƒO
‚ª•‚¶‚Ä‚µ‚Ü‚¤‚Æ‚¢‚¤‚±‚ƂȂç‚ÎA•’ʂ̓®ì‚ł͂Ȃ¢‚Å‚µ‚傤‚©B

374:371
09/10/25 19:14:22
>>372
>‚Å‚·
‚â‚Á‚ς芨ˆá‚¢‚¾‚Á‚½‚Ý‚½‚¢‚ËB‚²‚ß‚ñB

>>373
>•¶Žš—ñ‚ªŠm’肵‚Ä‚¢‚邯‚«‚ÉA“ú–{Œê“ü—̓‚[ƒh‚©‚Ç‚¤‚©‚ÉS‚炸AESC‚Ń_ƒCƒAƒƒO
>‚ª•‚¶‚Ä‚µ‚Ü‚¤‚Æ‚¢‚¤‚±‚ƂȂç‚ÎA•’ʂ̓®ì‚ł͂Ȃ¢‚Å‚µ‚傤‚©B
‚»‚Ì’Ê‚è‚Å‚·BЍˆá‚¢‚µ‚Ä‚¢‚Ü‚µ‚½B

375:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 19:44:40
OKƒ{ƒ^ƒ“‚ªƒfƒtƒHƒ‹ƒgƒ{ƒ^ƒ“‚ɂȂÁ‚Ä‚¢‚邯
•ÏŠ·’†‚Ì•¶Žš‚ðŠm’è‚·‚邯‚«‚Ìenter‚Å
“ü—͘g‚É•¶Žš‚ª“ü‚邯“¯Žž‚É(Žc‚è‚̘g‚ª–¢“ü—͂łà)
ƒ_ƒCƒAƒƒO‚ªŠm’肵‚ÄOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚½‚±‚ƂɂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·

376:362, 367
09/10/25 19:48:08
>>356
QLineEdit‚̃JƒXƒ^ƒ€ƒNƒ‰ƒX‚ð‘‚¢‚ÄAinputMethodEvent()‚ðƒI[ƒo[ƒ‰ƒCƒh‚µA
Žó‚¯Žæ‚Á‚½ƒCƒxƒ“ƒg‚Ìevent->preeditString()‚ª‹ó‚©‚Ç‚¤‚©‚ÅA
“ü—Í’†‚©‚Ç‚¤‚©‚ª”»’f‚Å‚«‚é‚Ý‚½‚¢B

‚Ü‚½A‚±‚¿‚ç(Linux, qt immodule, anthy)‚Å‚ÍA“ú–{Œê“ü—Í’†i•ÏŠ·Šm’è‘Oj‚ÍA
“r’†‚ÅESCƒL[‚ð‰Ÿ‚µ‚Ä‚àkeyPressEvent‚Í”­¶‚¹‚¸AinputMethodEvent‚¾‚¯‚ª”­¶‚µ‚½B
‚¾‚©‚ç‚»‚¿‚ç‚à“¯‚¶“®ì‚È‚çinputMethodEvent()‚¾‚¯‚ðƒI[ƒo[ƒ‰ƒCƒh‚·‚ê‚΂¢‚¢‚ÆŽv‚¤B

‚½‚¾A‚±‚¿‚ç‚̊‹«‚ƈႤ‚µAATOK‚Ì–â‘è‚©‚à‚ê‚È‚¢‚©‚çA‚»‚¿‚ç‚̊‹«‚Å‚ÍA
“ú–{Œê“ü—Í’†‚ÉESC‚ð‰Ÿ‚µ‚½‚Æ‚«‚ÉAkeyPressEvent‚ª”­¶‚µ‚Ä‚¢‚é‚©‚à‚µ‚ê‚È‚¢B
‚»‚̂Ƃ«‚ÍAkeyPressEvent()‚àƒI[ƒo[ƒ‰ƒCƒh‚·‚é•K—v‚ª‚ ‚é‚©‚à‚µ‚ê‚È‚¢B
ꇂɈ˂Á‚Ă̓tƒ‰ƒO‚𗧂Ăēü—Í’†‚©‚Ç‚¤‚©‚ð”»’f‚·‚ê‚΂悢B

377:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 20:07:45
>>375
>OKƒ{ƒ^ƒ“‚ªƒfƒtƒHƒ‹ƒgƒ{ƒ^ƒ“‚ɂȂÁ‚Ä‚¢‚邯
>•ÏŠ·’†‚Ì•¶Žš‚ðŠm’è‚·‚邯‚«‚Ìenter‚Å
>“ü—͘g‚É•¶Žš‚ª“ü‚邯“¯Žž‚É(Žc‚è‚̘g‚ª–¢“ü—͂łà)
>ƒ_ƒCƒAƒƒO‚ªŠm’肵‚ÄOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚½‚±‚ƂɂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·

>>343 ‚Ìl‚¾‚æ‚ËB
‚±‚¿‚çiLinux/X11j‚Å‚ÍA’P‚É“ú–{Œê“ü—͂̊m’è‚ɂȂéB
‚»‚µ‚Ä‚à‚¤ˆê“xEnter‚ð‰Ÿ‚·‚ƃfƒtƒHƒ‹ƒgƒ{ƒ^ƒ“‚É‚æ‚èAƒ_ƒCƒAƒƒO‚ª•‚¶‚éB

378:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 20:28:02
ƒL[ƒ{[ƒh‰ó‚ê‚Ä‚ñ‚¶‚á‚Ë

379:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 21:27:25
>>346
MS-IME‚̓}ƒCƒNƒƒ\ƒtƒg‚Ì»•i‚¾‚¯‚ÇB

> IME - Wikipedia
> Wikipedia€–ÚØÝ¸
> IME‚ÍWindows‚É‚¨‚¯‚é—pŒê‚Å‚ ‚èA
> L‚­•¶Žš“ü—͂̂½‚߂̃VƒXƒeƒ€‚ð•\‚·ˆê”Ê–¼Ì‚̓Cƒ“ƒvƒbƒgƒƒ\ƒbƒh‚Å‚ ‚éB
> ‚½‚¾‚µAŋ߂łÍWindowsˆÈŠO‚̃vƒ‰ƒbƒgƒtƒH[ƒ€‚ÅŽg‚í‚ê‚éƒCƒ“ƒvƒbƒgƒƒ\ƒbƒh
> iMac OS‚Ìu‚±‚Æ‚¦‚èv‚È‚Çj‚ɂ‚¢‚Ä‚àIME‚ƌĂ΂ê‚邱‚Æ‚ª‚ ‚éB
> Androidƒvƒ‰ƒbƒgƒtƒH[ƒ€‚Å‚ÍWindows“¯—lAIME‚Æ‚¢‚¤—pŒê‚ðŽg—p‚µ‚Ä‚¢‚éB

‚¤‚ÞA”÷–­B


380:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/25 21:33:16
IME ‚ƌĂÔl‚Í‚Ù‚Ú Windows ƒ†[ƒU‚Æl‚¦‚ăIƒP‚Å‚·B

381:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 10:42:48
Qt Creator‚̈ê”Ô‚µ‚½‚̃o[‚ÉŒŸõƒ{ƒbƒNƒX‚ª‚ ‚è‚Ü‚·‚æ‚Ë
‚ ‚êAƒƒ\ƒbƒh‚Æ‚©ŒŸõ‚Å‚«‚ĕ֗˜‚È‚ñ‚¾‚¯‚Ç
‚‚¢‚Å‚ÉA•Ï”‚àŒŸõ‚Å‚«‚È‚¢‚Å‚·‚©H


382:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 12:52:48
–³—‚ð³’m‚Ìã‚Å‚ÌQt‰SŽÒ‚ÌŽ¿–â‚Å‚·B

Windows‚ÅCQMainWindow‚̃EƒBƒ“ƒhƒEƒnƒ“ƒhƒ‹(HWND)‚ðŽæ“¾‚·‚é•û–@‚Á‚ĂȂ¢‚ñ‚Å‚µ‚傤‚©H
¡‚܂ő¼‚ÌŠJ”­ŠÂ‹«‚Å‘‚«‚½‚ß‚½ƒ\[ƒX‚⃉ƒCƒuƒ‰ƒŠ‚ÅHWND‚ðˆø”‚⃊ƒ^[ƒ“’l‚ÉŽ‚Â
WIN32 API‚ð‚©‚È‚èŽg‚Á‚Ä‚¢‚é‚Ì‚ÅCŠy‚ɈÚA‚µ‚½‚¢‚̂ł·B

Qt‚ÌÝŒvŽv‘z‚©‚çOSˆË‘¶‚·‚邿‚¤‚È‚à‚͔̂rœ‚³‚ê‚Ä‚¢‚é‚Ì‚à‚í‚©‚è‚Ü‚·‚µCWIN32 API‚Ì
‘ã‘Ö‚Æ‚È‚é‚æ‚¤‚È‹@”\‚ª—pˆÓ‚³‚ê‚Ä‚¢‚邿‚¤‚ł͂ ‚é‚ñ‚Å‚·‚ªDDD

Œ»ÝƒAƒNƒeƒBƒu‚ȃEƒBƒ“ƒhƒE‚̃nƒ“ƒhƒ‹‚È‚çWIN32 API‚Ì ::GetActiveWindow() ‚Ŏ擾‚Å‚«‚Ü‚µ‚½‚ªC
‚»‚Ì‘¼‚̃EƒBƒ“ƒhƒE‚ɂ‚¢‚Ä‚ÍC::FindWindowEx()‚Æ‚©Žg‚Á‚Ď擾‚·‚邵‚©‚È‚¢‚ñ‚Å‚µ‚傤‚©B


383:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 12:58:04
‚ ‚è‚Ü‚·‚ª

384:382
09/10/26 12:59:29
>>383
Ž¿–â‚·‚é‘O‚Ƀwƒ‹ƒv‚ð’T‚µ‚½‚ñ‚Å‚·‚ªŒ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½B
‹³‚¦‚Ä‚­‚¾‚³‚¢B

385:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 13:09:04
>>382
Qt-interest Archive - Qt 4.2.0: How to get HWND handle?
URLØÝ¸(lists.trolltech.com)

WId‚ÍWindows‚Å‚Íhwnd‚¾‚©‚çAWId QWidget::winId() const‚ðŽg‚¤‚ñ‚¾‚Á‚Ä‚³

386:382
09/10/26 13:24:22
>>385
‚â‚Á‚Ă݂½‚炤‚Ü‚­s‚«‚Ü‚µ‚½B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

387:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 16:08:56
>>381
‚Å‚«‚È‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB

‘½•ª’m‚Á‚Ä‚¢‚邯Žv‚¤‚¯‚ÇAŒ»ÝŠJ‚¢‚Ä‚¢‚éƒhƒLƒ…ƒƒ“ƒgˆÈŠO‚ðŒŸõ‚µ‚½‚¢‚̂ȂçB

u•ÒWvƒƒjƒ…[‚ÌuŒŸõE’uŠ·v->uFind Dialogv‚â
u•ÒWvƒƒjƒ…[‚ÌuŒŸõE’uŠ·v->uƒfƒBƒXƒNã‚̃tƒ@ƒCƒ‹v
‚Ȃǂð‘I‚ñ‚ÅA•¡”‚̃tƒ@ƒCƒ‹‚Ì’†‚ÌŒŸõ‚ª‚Å‚«‚é‚©‚ç‚»‚ê‚ðŽg‚¤‚µ‚©‚È‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB
ŒŸõŒ‹‰Ê‚ÍAQt Creator‚Ì’†‚ÅƒŠƒXƒgƒAƒbƒv‚³‚ê‚é‚̂ŕ֗˜B
‚Å‚à‚±‚ꂾ‚ÆA•Ï”ŒÀ’è‚Æ‚¢‚¤‚킯‚ɂ͂¢‚©‚È‚¢‚¯‚ÇB

ƒfƒBƒXƒN“à‚ðŒŸõ‚·‚邯‚«‚ÍAƒfƒBƒŒƒNƒgƒŠ‚ðŽw’肵‚½•û‚ª‚¢‚¢‚æB

388:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 23:19:11
>333
’xƒŒƒX‚Å‚·‚ªAƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B

„‚¾‚©‚çAƒV[ƒ“‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚ÄA
„ƒAƒCƒeƒ€‚Ì‹¤’ʂ̈—‚ÍA‚±‚¿‚ç‚Å‘‚¯‚΂¢‚¢‚ÆŽv‚¤B
‚±‚ê‚ðŽÀ‘H‚µ‚悤‚ÆŽv‚¢AQGraphicsScene‚©‚ç”h¶‚µ‚½PixmapSceneƒNƒ‰ƒX‚ð
‚‚­‚èAmousePressEvent()‚ðŽÀ‘•‚µ‚ÄA‚»‚±‚Ń}ƒEƒXƒNƒŠƒbƒN‚³‚ꂽ˜_—À•W‚ð
“¾‚悤‚Æ‚µ‚Ü‚µ‚½B

class PixmapScene : public QGraphicsScene
{
public:
PixmapScene();

protected:
void mouseMoveEvent(QMouseEvent* event);
void mousePressEvent(QMouseEvent* event);
};
‚±‚Ì‘‚«•û‚¾‚ÆAƒ}ƒEƒXƒCƒxƒ“ƒg‚ª”­¶‚³‚ê‚È‚¢‚̂ł·‚ªA
‚Ç‚±‚ªŠÔˆá‚Á‚Ä‚¢‚é‚Å‚µ‚傤‚©H

389:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 23:26:23
virtual

390:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/26 23:33:00
>>388
Q_OBJECTƒ}ƒNƒ‘‚©‚È‚¢‚Æ‚¢‚¯‚È‚¢B

class PixmapScene : public QGraphicsScene
{
Q_OBJECT
public:
PixmapScene();
//...

391:390
09/10/26 23:45:23
>>390 ‚Ì‘±‚«

‚à‚¤ˆê‚Â
QGraphicsScene‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚̂قƂñ‚Ç‚ÍA
QGraphicsSceneEvent‚©‚ç”h¶‚µ‚½ƒCƒxƒ“ƒgƒ^ƒCƒv‚̃Cƒxƒ“ƒg‚ð
ƒnƒ“ƒhƒ‹‚·‚éB

lass PixmapScene : public QGraphicsScene
{
Q_OBJECT
//...
protected:
void mouseMoveEvent(QGraphicsSceneMouseEvent* mouseEvent)
void mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent)
//...

QGraphicsScene‚âQGraphicsItem‚ÍAqreal‚âQRectF‚Ȃǂ̕‚“®¬”“_”Œ^
‚Ì’l‚ÅÀ•W’l‚ð•ÛŽAŒvŽZ‚·‚éB

‚¾‚©‚çAŽ©•ª‚ŃJƒXƒ^ƒ€ƒNƒ‰ƒX‚ð‘‚­Žž‚ÍA‚±‚ê‚ç‚Ì•‚“®¬”“_”Œ^‚ðŽg‚¤B
‚¿‚Ȃ݂ÉAˆê•”‚Ì‘gž‚݂̂à‚̂𜂢‚ÄA‚Ù‚Æ‚ñ‚ǂ̃vƒ‰ƒbƒgƒtƒH[ƒ€‚Å‚ÍA
qreal‚Ídouble‚ªtypedef‚³‚ꂽ‚àB

‚½‚¾‚µAƒ†[ƒU[‚Æ‚µ‚ÄŽg‚¤Žž‚ÍA˜_—À•W‚Æ‚¢‚¤‚±‚Æ‚ÅintŒ^‚Ȃǂ̒l‚ð
ƒƒ“ƒo[ŠÖ”‚É“n‚µ‚Ä‚à‚æ‚¢B

392:390
09/10/26 23:54:53
’ù³j;‚ª”²‚¯‚Ä‚¢‚½B
void mouseMoveEvent(QGraphicsSceneMouseEvent* mouseEvent);
void mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent);

•ª‚©‚Á‚Ä‚¢‚邯‚ÍŽv‚¤‚¯‚ÇAPixmapScene‚©‚炳‚ç‚É”h¶‚³‚¹A
‚»‚Ì”h¶ƒNƒ‰ƒX‚ŃCƒxƒ“ƒg‚ðƒnƒ“ƒhƒ‹‚·‚éꇂɂÍ
PixmapScene‚̃Cƒxƒ“ƒgƒnƒ“ƒhƒ‰[‚É‚à
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* mouseEvent);
‚Ævirtual‚ð‚‚¯‚È‚¢‚Æ‚¢‚¯‚È‚¢B

393:390
09/10/26 23:58:18
“xX‚²‚ß‚ñ
Αjlass PixmapScene : public QGraphicsScene
³jclass PixmapScene : public QGraphicsScene

394:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 00:06:04
>391, 392
virtual‚ÌŒ‚ͳ’m‚µ‚Ä‚¨‚è‚Ü‚·B‚²Žw“E‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B

scene‚̃}ƒEƒXƒCƒxƒ“ƒg‚ª‚¤‚Ü‚­•â‘«‚Å‚«‚Ü‚¹‚ñB
class PixmapScene : public QGraphicsScene
{
Q_OBJECT
public:
PixmapScene();

protected:
void mouseMoveEvent(QGraphicsSceneMouseEvent* mouseEvent);
void mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent);
};

void PixmapScene::mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent)
{
int x = mouseEvent->lastPos().x();
int y = mouseEvent->lastPos().y();
qDebug() << QString("into PixamapScene::mousePressEvent() (x, y) = (%1, %2)").arg(x).arg(y);
}
‚Æ‚©‚â‚Á‚Ă݂܂µ‚½‚ªAƒRƒ“ƒ\[ƒ‹‚ɉ½‚à•\ަ‚³‚ê‚Ü‚¹‚ñB
MainWindow‚ÅPixmapScene m_scene;‚Æ‚µ‚ÄA
m_scene.addPixmap(QPixmap::fromImage(m_imge));
ui->graphicsView->setScene(&m_scene);
‚ðs‚Á‚ÄAscene‚ðgraphicsview‚ɃZƒbƒg‚Í‚µ‚Ä‚¨‚è‚Ü‚·B

‰½‚©ª–{“I‚É—‰ð‚ªŠÔˆá‚Á‚Ä‚¢‚é‚Ì‚©BBB

395:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 00:10:24
>>390
> Q_OBJECTƒ}ƒNƒ‘‚©‚È‚¢‚Æ‚¢‚¯‚È‚¢B
ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚ðƒI[ƒo[ƒ‰ƒCƒh‚·‚邽‚ß‚¾‚¯‚È‚ç‚ÎA‚È‚­‚Ä‚à‚æ‚¢‚Å‚·B

>>392
> virtual‚ð‚‚¯‚È‚¢‚Æ‚¢‚¯‚È‚¢B
•t‚¯‚È‚­‚Ä•t‚¯‚½‚±‚ƂɂȂé‚Ì‚ÅA•t‚¯‚È‚­‚Ä‚à‚æ‚¢‚Å‚·B

396:390
09/10/27 00:32:13
>>395
Œë‰ð‚µ‚Ä‚¢‚½B
‚ ‚肪‚Æ‚¤B

397:390
09/10/27 00:47:07
>>394
‚¿‚å‚Á‚ÆŒ´ˆö‚ª•ª‚©‚ç‚È‚¢B
‚±‚¿‚ç‚ÅŠm”F‚µ‚½ŒÀ‚è‚Å‚ÍA394‚̃R[ƒh‚Å–â‘è‚È‚­ƒ}ƒEƒXƒvƒŒƒXƒCƒxƒ“ƒg‚ªƒnƒ“ƒhƒ‹‚Å‚«‚½B

‚½‚¾Aƒnƒ“ƒhƒ‰[‚Ì’†‚ÅQGraphicsScene::mousePressEvent()‚ðƒR[ƒ‹‚µ‚½•û‚ª‚¢‚¢‚ÆŽv‚¤B
‚»‚¤‚µ‚È‚¢‚ƃAƒCƒeƒ€‚ª”z’u‚³‚ê‚Ä‚¢‚鎞‚ÉA‚»‚̃AƒCƒeƒ€‚ɃCƒxƒ“ƒg‚ª“`‚í‚ç‚È‚­‚È‚éB

void
PixmapScene::mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent)
{
qreal x = mouseEvent->lastScenePos().rx();
qreal y = mouseEvent->lastScenePos().ry();
qDebug() << QString("PixamapScene::mousePressEvent() (x, y) = (%1, %2)").arg(x).arg(y);

QGraphicsScene::mousePressEvent(mouseEvent);
}

398:390
09/10/27 01:12:38
>>394
ˆê‚ÂŽv‚¢‚‚¢‚½B

GraphicsView‚ÌmousePressEvent()‚ðƒI[ƒo[ƒ‰ƒCƒh‚µ‚Ä‚¢‚é‚Ì‚ÉA
‚»‚Ì’†‚ÅŠî’êƒNƒ‰ƒX‚ÌQGraphicsView::mousePressEvent()‚ð
ƒR[ƒ‹‚µ‚Ä‚¢‚È‚¢‚Ì‚ªŒ´ˆö‚Å‚Í?

ƒOƒ‰ƒtƒBƒbƒNƒXƒV[ƒ“ƒtƒŒ[ƒ€ƒ[ƒN‚Å‚ÍAƒCƒxƒ“ƒg‚Í
QGraphicsView -> QGraphicsScene -> QGraphicsItem
‚̇”Ô‚É“`‚¦‚ç‚ê‚é‚©‚çB

399:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 06:50:56
Qt‚̃lƒbƒgƒ[ƒN‚ÉŠÖ‚µ‚Ă̎¿–â‚Å‚·B

HTTPƒvƒƒgƒRƒ‹‚ðŽg‚Á‚ÄAWebƒTƒCƒg‚ɃAƒNƒZƒX‚·‚邽‚ß‚ÉA¡‚܂łÍQHttp‚Æ‚»‚ÌŽü•ӂ̃Nƒ‰ƒX‚ðŽg‚Á‚Ä‚¢‚Ü‚µ‚½B

‚µ‚©‚µAQHttp‚̃wƒ‹ƒv‚ðŒ©‚é‚ÆAQt 4.4‚Å“±“ü‚³‚ꂽAQNetworkAccessManager‚ðŽg‚Á‚½‚Ù‚¤‚ª‚æ‚¢‚Æ‘‚¢‚Ä‚ ‚è‚Ü‚µ‚½B
Šm‚©‚É‚±‚¿‚炾‚ÆAƒAƒNƒZƒX‚µ‚½Œã‚ɕԂÁ‚Ä‚­‚é•Ô“š‚ðQIODevice‚ðŒp³‚µ‚Ä‚¢‚éQNetworkReply‚Ŏ󂯎æ‚ê‚é‚Ý‚½‚¢‚ÅAŽg‚¢‚â‚·‚»‚¤‚Å‚µ‚½B

‚»‚±‚ÅA‚±‚¿‚ç‚ɈÚs‚µ‚悤‚ÆŽv‚¢A‘‚«’¼‚µ‚Ä‚¢‚é‚̂ł·‚ªAQHttp‚ÅŽÀ‘•‚µ‚Ä‚¢‚½‚Æ‚«‚ÉA
header‚ð‹Lq‚·‚邽‚߂ɗp‚¢‚½QHttpRequestHeaderƒNƒ‰ƒX‚Ì

QHttpRequestHeader::QHttpRequestHeader ( const QString & method, const QString & path, int majorVer = 1, int minorVer = 1 )

‚±‚̃ƒ\ƒbƒh‚ÌArequest-URI‚ðŽw’è‚·‚épath‚âAprotocol-version‚ðŽw’è‚·‚émajorVer‚Ȃǂð
‹Lq‚·‚é‚à‚Ì‚ªQNetworkReplyƒNƒ‰ƒX‚â‚»‚ÌŽü•ÓƒNƒ‰ƒX‚ÌQNetworkRequestƒNƒ‰ƒX‚ÉŒ©“–‚½‚è‚Ü‚¹‚ñB
‚Ü‚½AQHttp::setHost(...)‚̂悤‚ȃzƒXƒg‚ðŽw’è‚·‚郃\ƒbƒh‚àŒ©“–‚½‚è‚Ü‚¹‚ñB

‚Ç‚¤‚©‚²‘¶’m‚Ì•û‚ª‚¨‚ç‚ê‚Ü‚µ‚½‚çA‚²‹³Žö‚¨Šè‚¢‚µ‚Ü‚·B

400:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 07:09:43
QIODevice‚ðŒp³‚µ‚Ä‚¢‚é

401:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 07:13:02
path‚âhost‚ÍQNetworkRequest‚ÉQU‚’‚Œ‚ÅŽw’è‚·‚é‚ñ‚¶‚á‚È‚¢‚ÌH

402:399
09/10/27 07:44:54
>>401
‚Å‚«‚Ü‚µ‚½I
Ž©“®‚ŃzƒXƒg‚ƃpƒX‚𕪂¯‚Ä‚­‚ê‚é‚ñ‚Å‚·‚ËB

‘¼‚̂Ƃ±‚ë‚̃oƒO‚à‚ ‚Á‚Ä‚¤‚Ü‚­s‚©‚¸‹C‚«‚Ü‚¹‚ñ‚Å‚µ‚½B
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B


403:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 21:43:30
>390
void PixmapScene::mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent)
‚É“ü‚Á‚Ä‚­‚邱‚Æ‚ª‚Å‚«‚Ü‚µ‚½B

‚ª‚µ‚©‚µA
mouseEvent->lastPos(), pos()‚ȂǎÀs‚µ‚Ä‚àA(0, 0)‚µ‚©•Ô‚Á‚Ä—ˆ‚Ü‚¹‚ñB
mouseEvent->scenePos()‚ª–Ú“I‚Æ‚µ‚Ä‚¢‚½À•W’l‚̂悤‚Å‚·B

‚Ü‚½AscenePos()‚ªƒ}ƒCƒiƒX‚̂Ƃ±‚ë‚ðƒNƒŠƒbƒN‚µ‚Ä‚àAã‹LƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚É—ˆ‚é‚Ý‚½‚¢‚Å‚·B
‚Ä‚Á‚«‚è‚»‚Ìscene“à‚¾‚¯‚©‚ÆŽv‚Á‚½‚çBBB

‚à‚¤­‚µƒwƒ‹ƒv‚ð“Ç‚ñ‚ł݂܂·B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

404:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 22:16:35
mousecapture

405:403
09/10/27 23:32:40
‚ ‚ƈꑧ‚Ȃ̂ł¨’mŒb‚ð”qŽØ‚¢‚½‚¾‚¯‚邯‚ ‚肪‚½‚¢‚Å‚·B

MainWindowiQMainWindow‚©‚ç”h¶j
+ImageView(QGraphicsView‚©‚ç”h¶)
+PixmapScene(QGraphicsScene‚©‚ç”h¶)

MainWindow‚Åui->graphicsView->setScene()‚ÅPixmapSceneƒIƒuƒWƒFƒNƒg‚ðÝ’è
‚Æ‚¢‚¤‘O’ñ‚ÅA

void PixmapScene::mousePressEvent(QGraphicsSceneMouseEvent* mouseEvent)
ã‹LƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚©‚çAMainWindow‚̃ƒ“ƒoŠÖ”‚ðŒÄ‚Ñ‚½‚¢‚̂ł·‚ªA
‚ǂ̂悤‚É‚µ‚½‚ç‚æ‚¢‚̂łµ‚傤H

PixmapScene‚©‚çImageView‚̃|ƒCƒ“ƒ^‚ðƒQƒbƒg‚Å‚«‚ê‚ÎA
ImageView‚©‚çMainWindow‚̃|ƒCƒ“ƒ^‚𓾂ÄAMainWindow‚̃ƒ“ƒoŠÖ”‚ðŒÄ‚ׂé‚̂łÍ
‚Æl‚¦‚Ä‚¨‚è‚Ü‚·B

‚â‚肽‚¢‚±‚Ƃɑ΂µ‚ĔώG‚È‹C‚ª‚·‚é‚̂ł·‚ªA‚±‚ñ‚È‚à‚̂ł·‚©‚ËB

406:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/27 23:38:07
>>403
>‚Ü‚½AscenePos()‚ªƒ}ƒCƒiƒX‚̂Ƃ±‚ë‚ðƒNƒŠƒbƒN‚µ‚Ä‚àAã‹LƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚É—ˆ‚é‚Ý‚½‚¢‚Å‚·B
>‚Ä‚Á‚«‚è‚»‚Ìscene“à‚¾‚¯‚©‚ÆŽv‚Á‚½‚çBBB
ƒV[ƒ“‚͘_—À•W‚ð•\Œ»‚·‚éƒNƒ‰ƒX‚Ȃ̂ÅÀ•W’l‚Æ‚µ‚ă}ƒCƒiƒX‚à‚Æ‚éB

407:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 00:38:13
>>405
>‚ ‚ƈꑧ‚Ȃ̂ł¨’mŒb‚ð”qŽØ‚¢‚½‚¾‚¯‚邯‚ ‚肪‚½‚¢‚Å‚·B
‚ª‚ñ‚΂êB

>MainWindowiQMainWindow‚©‚ç”h¶j
>+ImageView(QGraphicsView‚©‚ç”h¶)
>+PixmapScene(QGraphicsScene‚©‚ç”h¶)

‚¿‚å‚Á‚ƃNƒ‰ƒX‚Ì\¬‚âŽQÆŠÖŒW‚ªŒ©‚¦‚È‚¢‚ñ‚¾‚¯‚ÇB
‚±‚ê‚ç‚̃Nƒ‰ƒX‚ÍA‘S‚ăR[ƒh‚Å‘‚¢‚½‚ÌH‚»‚ê‚Æ‚àƒtƒH[ƒ€ƒGƒfƒBƒ^‚ðŽg‚Á‚½?
ƒtƒH[ƒ€ƒGƒfƒBƒ^‚ðŽg‚Á‚½‚̂ȂçMainWinodw‚̉º‚É
ƒZƒ“ƒgƒ‰ƒ‹ƒEƒBƒWƒbƒg‚µ‚ÄQWidget‚ª‚ ‚é‚Í‚¸‚È‚ñ‚¾‚¯‚ÇB
>>285 ‚ÅŽw“E‚µ‚½‚悤‚È‚±‚Æ‚ª•K—v‚ɂȂéB

‚»‚ê‚Æ‚àAImageView‚ÍAsetCentralWidget()‚ÅŽw’肵‚½
ƒZƒ“ƒgƒ‰ƒ‹ƒEƒBƒWƒbƒg‚È‚Ì?
PixmapScene‚ÍAeƒIƒuƒWƒFƒNƒg‚ðŽQÆ‚µ‚Ä‚¢‚éA‚»‚ê‚Æ‚à‚µ‚ĂȂ¢?
‚»‚̕ӂª•ª‚©‚ç‚È‚¢‚©‚çˆê”ʘ_‚ʼnñ“š‚·‚éB

408:407
09/10/28 00:39:41
‚‚«

QWidget‚É‚ÍAeƒEƒBƒWƒbƒg‚ðƒ|ƒCƒ“ƒ^[‚Æ‚µ‚ÄŽQÆ‚³‚¹‚邱‚Æ‚ª‚Å‚«‚é‚©‚ç
‚à‚µƒRƒ“ƒXƒgƒ‰ƒNƒ^[‚ȂǂÅeƒEƒBƒWƒbƒg‚ðŽQÆ‚³‚¹‚ĂȂ¢‚È‚çŽQÆ‚³‚¹‚邿‚¤‚É‚µ‚Ä‚©‚ç
‚»‚ÌparentWidget()‚ÅeƒEƒBƒWƒbƒg‚ðŽQÆ‚µ‚Äqobject_cast<>()‚ŃLƒƒƒXƒg‚µ‚Ä
‚Æ‚¢‚¤ˆ—‚ðŒJ‚è•Ô‚µAƒƒCƒ“ƒEƒCƒ“ƒhƒE‚܂ők‚Á‚Ä‚¢‚­‚©B

‚Ü‚½‚Í
>>286 ‚ÅŽw“E‚µ‚½•û–@‚Ȃǂ̑ã‘ÖˆÄ‚ð‚Æ‚é‚Æ‚©B
‚Ȃǂªl‚¦‚ç‚ê‚éB

‚Ü‚½AƒV[ƒ“‚̃JƒXƒ^ƒ€ƒNƒ‰ƒX‚ð‘‚¢‚Ä‚¢‚é‚̂Ȃç‚ÎMainWindow‚ðƒ|ƒCƒ“ƒ^[ƒƒ“ƒo[‚Æ‚µ‚ÄŽQÆ‚µA
ƒRƒ“ƒXƒgƒ‰ƒNƒgŽž‚É“n‚·‚悤‚É‚·‚ê‚΂¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB

QGraphicsScene‚ÍQWidget‚ł͂Ȃ­QObject‚ðŒp³‚µ‚Ä‚¢‚éAparent()‚ÅeƒIƒuƒWƒFƒNƒg‚𓾂ÄA
qobject_cast<>()‚ŃLƒƒƒXƒg‚·‚é•K—v‚ª‚ ‚éB

409:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 08:30:44
ƒOƒO‚Á‚Ä‚¢‚½‚çC‚¢‚‚̊Ԃɂ©uQt Users Forum Japanv‚È‚éƒtƒH[ƒ‰ƒ€‚ªo—ˆ‚Ä‚é
‚̂ɂ½‚ǂ蒅‚¢‚½B

URLØÝ¸(qtusersforum.s2.zmx.jp)

‚±‚±‚à‚¢‚¢‚ñ‚¾‚¯‚ÇCƒ\[ƒXƒR[ƒh‘‚­‚ƃCƒ“ƒfƒ“ƒg‚ª–³Ž‹‚³‚ê‚Ä‚µ‚Ü‚¤‚Ì‚ÅCƒ\[ƒXƒR[ƒg
‚ð‘‚­•K—v‚ª‚ ‚éꇂÍã‚Ì•û‚ªŒü‚¢‚Ă邩‚àB
ŠÇ—l‚ª‚Ç‚ñ‚ȃvƒƒtƒB[ƒ‹‚ÅC‚Ç‚ñ‚È”wŒi‚Åì‚ç‚ꂽ‚©‚͂킩‚ç‚ñ‚ªB

410:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 11:34:49
Qt‚Ń}ƒ‹ƒ`ƒXƒŒƒbƒh‚̃fƒUƒCƒ“ƒpƒ^[ƒ“‚ÌŽÀ‘•—Ⴊ‚Ù‚µ‚¢B

411:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 11:52:00
>>410
pthread(POSIX Thread)‚̃pƒ^[ƒ“‚ªA‚»‚̂܂܎g‚¦‚È‚¢H

412:403
09/10/28 22:30:47
>407
MainWindow‚ÆImageView‚̓tƒH[ƒ€ƒGƒfƒBƒ^‚Åì¬
MainWindowã‚ÉQGraphicsView‚ðŠiã‚°
QGraphicsScene‚ð”h¶‚µ‚½PixmapScene‚ðŽ©ì
PixmapScene‚ÍMainWindow‚Ƀƒ“ƒo•Ï”‚Æ‚µ‚ăCƒ“ƒXƒ^ƒ“ƒX¶¬
PixmapScene‚ð”h¶‚·‚éÛAQGraphicsScene‚ª‚²Žw“E‚̂Ƃ¨‚èA
QObject‚ðˆø”‚Æ‚·‚éƒRƒ“ƒXƒgƒ‰ƒNƒ^‚µ‚©‚È‚©‚Á‚½‚½‚ßAPixmapScene‚Ì
ƒCƒxƒ“ƒgƒnƒ“ƒhƒ‰‚©‚çMainWindow‚̃ƒ“ƒoŠÖ”‚Ö‚Ç‚¤‚â‚Á‚ăAƒNƒZƒX‚µ‚½‚ç
—Ç‚¢‚Ì‚¾‚낤‚Æ”Y‚݂܂µ‚½B

ŒJ‚è•Ô‚µ‚ɂȂè‚Ü‚·‚ªAPixmapScene‚̃Cƒ“ƒXƒ^ƒ“ƒX¶¬‚ÍAMainWindow‚Ì
ƒƒ“ƒo•Ï”‚Æ‚µ‚Ä‚¨‚è‚Ü‚·‚ªA‚±‚ÌÛA
PixmapScene::PixmaScene(QObject* parent) : QGraphicsScene(parent){}
‚ƃRƒ“ƒXƒgƒ‰ƒNƒ^‚ð’è‹`‚µ‚ÄA
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWindow),m_pixmapscene(this) { ... }
PixmapScene‚ÉMainWindow‚̃|ƒCƒ“ƒ^‚ð“n‚µ‚Ä‚¨‚«APixmapScene::mousePressEventQGraphicsSceneMouseEvent* mouseEvent)
{
MainWindow* mainwindow = qobject_cast<MainWindow*>(parent());
qDebug() << mainwindow;
if (mainwindow != 0)
{
mainwindow->setPointToStatusBar(mouseEvent->scenePos().x(), mouseEvent->scenePos().y());
}
}
MainWindow‚̃ƒ“ƒoŠÖ”‚ɃAƒNƒZƒX‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚µ‚½B
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B
i’·X‚Æà–¾‚ª‰ºŽè‚Å‚·‚¢‚Ü‚¹‚ñBj
>>286‚̂悤‚ÉAƒOƒ[ƒoƒ‹‚ȃAƒvƒŠ‚̃|ƒCƒ“ƒ^Žg‚Á‚½•û‚ªƒXƒ}[ƒg‚©‚ȂƎv‚Á‚½‚èBBB

413:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 22:45:29
>>410
ƒTƒuƒXƒŒƒbƒh‚©‚çƒVƒOƒiƒ‹‚ð‘—‚é‚ÆƒƒCƒ“ƒXƒŒƒbƒh‚̃Xƒƒbƒg‚ŕߑ¨‚³‚ê‚é‚Ì‚Å
ƒXƒŒƒbƒhŠÔ’ÊM‚ª‚·‚Á‚°[ŠÈ’P‚É‚È‚é‚æ

414:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/28 23:08:30
>>412

>ƒOƒ[ƒoƒ‹‚ȃAƒvƒŠ‚̃|ƒCƒ“ƒ^Žg‚Á‚½•û‚ªƒXƒ}[ƒg‚©‚ȂƎv‚Á‚½‚èBBB
MainWindow‚܂ł½‚Ç‚é‚Ì‚ª‘å•ςȂƂ«i‰“‚¢‚Æ‚«j‚ÍA—LŒøB

415:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/29 01:24:46
>>413
‚Ü‚ A‚»‚ñ‚ȂƂ±‚ë‚ÌŽÀ‘•—ႪŒ©‚½‚¢‚ñ‚¾‚æ‚ÈB

4.6‚É‚ÍQFuture‚Æ‚©‚ ‚邵AŽg‚¢•û‚à’m‚肽‚¢B

416:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/29 08:18:19
>>415
QFuture‚ÍA4.4‚©‚ç‚ ‚è‚Ü‚·B

417:403
09/10/29 23:45:58
>408
>>286‚̂悤‚ȃR[ƒh‚ÉC³‚µ‚½‚¢‚ÆŽv‚Á‚½‚̂ł·‚ªAqApp‚͂ǂ±‚Ŷ¬‚³‚ê‚Ä‚¢‚é‚à‚̂Ȃ̂łµ‚傤H

¡Œ»Ýmain()‚Í
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());

QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
‚±‚̂悤‚ÈŠ´‚¶‚Å‚·Bi¡Œ©‚邯a, w‚Æ‚©“K“–‚ȕϔ–¼BBj
QApplicationƒNƒ‰ƒX‚ð”h¶‚³‚¹‚ÄAgetMainWindow()‚ð’ljÁ‚·‚é‚̂͂킩‚é‚̂ł·‚ªB


418:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/30 06:10:04
>>417

>408
>>286‚̂悤‚ȃR[ƒh‚ÉC³‚µ‚½‚¢‚ÆŽv‚Á‚½‚̂ł·‚ªAqApp‚͂ǂ±‚Ŷ¬‚³‚ê‚Ä‚¢‚é‚à‚̂Ȃ̂łµ‚傤H

qApp‚ÍA/QTDIR/src/gui/kernel/qapplication.h“à‚Å’è‹`‚³‚ê‚Ä‚¢‚éƒ}ƒNƒ‚ÅA
ŽŸ‚̂悤‚ɂȂÁ‚Ä‚¢‚éB
#if defined(qApp)
#undef qApp
#endif
#define qApp (static_cast<QApplication *>(QCoreApplication::instance()))

ƒ}ƒNƒ‚Ȃ̂ŃRƒ“ƒpƒCƒ‹‚·‚é‘Oˆ—‚Æ‚µ‚ăvƒŠƒvƒƒZƒbƒT‚ªƒ\[ƒXƒR[ƒh‚É
qApp
‚ª‚ ‚邯A‚»‚Ì•”•ª‘S‚Ä‚ð
static_cast<QApplication *>(QCoreApplication::instance())
‚Éiƒ\[ƒXƒR[ƒh‚Æ‚µ‚Äj’u‚«Š·‚¦‚Ä‚­‚ê‚éB
‚‚܂èAƒ\[ƒXƒR[ƒh‚ÉqApp‚Æ‘‚¢‚½‚çA‚»‚±‚Éstatic_cast<QApplication *>(QCoreApplication::instance())
‚Æ‘‚¢‚½‚±‚ƂƓ¯‚¶‚±‚ƂɂȂéB

‚»‚ê‚ÅA‚±‚ÌQCoreApplication::instance()‚ÍA‰½‚©‚ÆŒ¾‚¤‚ÆAQApplication‚ÌŠî’êƒNƒ‰ƒX‚ÌQCoreApplication‚Å
’è‹`‚³‚ê‚Ä‚¢‚éstatic‚ÈŠÖ”‚ÅAƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚̃Cƒ“ƒXƒ^ƒ“ƒXiŽÀ—áFƒƒ‚ƒŠ[ã‚ÉŽÀÛ‚ÉŠm•Û‚³‚ꂽ•Ï”j‚ðŽw‚·ƒ|ƒCƒ“ƒ^[‚ð•Ô‚·B
‚‚܂èAƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ðŽw‚·ƒ|ƒCƒ“ƒ^[‚ð•Ô‚·B

419:418
09/10/30 06:11:41
>>417

QApplication‚ÌqApp [Macro]
URLØÝ¸(doc.trolltech.com)

QCoreApplication‚Ìinstanc() [static]
URLØÝ¸(doc.trolltech.com)

>‚±‚̂悤‚ÈŠ´‚¶‚Å‚·Bi¡Œ©‚邯a, w‚Æ‚©“K“–‚ȕϔ–¼BBj

ŒÂl“I‚Ȉӌ©‚¾‚¯‚ÇAŽ©•ª‚¾‚¯‚ŃvƒƒOƒ‰ƒ€‚·‚é‚̂ȂçA‚Ç‚ñ‚È–¼‘O‚Å‚à‚¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB
‚Ü‚½AŠÈ’P‚È“®ìƒ`ƒFƒbƒN‚È‚ñ‚©‚̂Ƃ«‚ȂǂÍA‚¢‚¿‚¢‚¿–¼‘O‚È‚ñ‚Äl‚¦‚Ä‚ç‚ê‚È‚¢‚µB

‚Å‚àAƒvƒƒWƒFƒNƒg‚Æ‚©‚ÉŽQ‰Á‚µ‚ÄAƒl[ƒ~ƒ“ƒO‹K–ñ‚ª‚ ‚é‚̂Ȃç‚΂»‚ê‚É]‚í‚È‚¯‚ê‚΂Ȃç‚È‚¢‚µA
‘¼‚Ìl‚ªŒ©‚é‚à‚Ì‚ÍA‚ ‚é’ö“x‚í‚©‚è‚â‚·‚­‚µ‚½•û‚ª‚æ‚¢‚ÆŽv‚¤B

‚»‚µ‚ÄA‚»‚Ìh‘¼‚Ìlh‚Æ‚¢‚¤‚Ì‚ÍA””NŒã‚ÌŽ©•ª‚Å‚ ‚é‰Â”\«‚ª‚ ‚éB
‚»‚¤‚·‚ê‚Ή½”N‚à‘O‚É‘‚¢‚½A‹K–͂̑傫‚¢A‚à‚¤“à—e‚ð–Y‚ê‚Ä‚µ‚Ü‚Á‚½ƒR[ƒh‚ðŒ©‚½‚Æ‚«‚ÉA‚Ç‚ñ‚Ȉ—‚ð‚µ‚Ä‚¢‚é‚©”cˆ¬‚·‚邽‚ß‚Ì
Žè•‚¯‚ɂȂéB

‚¾‚©‚ç•’i‚©‚çA‚ ‚é’ö“x‚͂킩‚è‚â‚·‚¢–¼‘O‚ð•t‚¯‚é•È‚ð•t‚¯‚Ä‚¨‚¢‚½•û‚ª‚¢‚¢‚ÆŽv‚¤B
ŒÂl“I‚Ȉӌ©‚¾‚©‚ç‹C‚Éá‚Á‚½‚炲‚ß‚ñB

420:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/30 20:43:18
QtCreator‚ª“®‚©‚ñAƒnƒ“ƒOƒAƒbƒv‚·‚écc‚Æ–ãX‚Æ‚µ‚Ä‚½‚ªAvastØ‚Á‚½‚ç‰ü‘P‚³‚ꂽB‰½ŒÌB
”Y‚Þl‚ª‚¢‚é‚©‚à‚µ‚ê‚È‚¢‚©‚çŽQl‚܂łÉcc

421:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/30 21:33:21
>418
Ú‚µ‚­à–¾‚µ‚Ä‚¢‚½‚¾‚«‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

•Ï”–¼‚ɂ‚¢‚Ăł·‚ªA‚½‚Ô‚ñMainWindow‚Ìexample‚Ìmain.cpp‚ð
‚»‚̂܂܎‚Á‚Ä‚«‚½‹C‚ª‚µ‚Ü‚·B
Ž©•ª‚Å‘‚­‚È‚çAƒ‹[ƒv•Ï”A‹ÇŠ“I‚ȃeƒ“ƒ|ƒ‰ƒŠ•Ï”ˆÈŠO‚Éˆê•¶Žš
‚Æ‚¢‚¤‚̂͂ ‚Ü‚èŽg‚¢‚Ü‚¹‚ñB

‚¿‚Ȃ݂ÉAQt‚͉‚߂ĊԂà‚È‚¢‚Å‚·BMFC‚Æ‚©C++/CLI‚Æ‚©Žï–¡‚Å‚â‚Á‚Ä‚¢‚Ü‚µ‚½‚ªA
‚Ç‚¿‚ç‚à’†“r”¼’[‚È‹C‚ª‚µ‚Ä‚¨‚èAƒ}ƒ‹ƒ`ƒvƒ‰ƒbƒgƒtƒH[ƒ€‚Ńˆ‚ÈC++‚Å‚ ‚éQt‚É
‹»–¡‚ðŽ‚Á‚½ŽŸ‘æ‚Å‚·B

422:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/30 22:21:39
>>421
>•Ï”–¼‚ɂ‚¢‚Ăł·‚ªA‚½‚Ô‚ñMainWindow‚Ìexample‚Ìmain.cpp‚ð
>‚»‚̂܂܎‚Á‚Ä‚«‚½‹C‚ª‚µ‚Ü‚·B
>Ž©•ª‚Å‘‚­‚È‚çAƒ‹[ƒv•Ï”A‹ÇŠ“I‚ȃeƒ“ƒ|ƒ‰ƒŠ•Ï”ˆÈŠO‚Éˆê•¶Žš
>‚Æ‚¢‚¤‚̂͂ ‚Ü‚èŽg‚¢‚Ü‚¹‚ñB
Œ¾‚¢‰ß‚¬‚½‹C‚ª‚·‚é‚Ì‚ÅAŽÓ‚è‚Ü‚·B‚²‚ß‚ñ‚È‚³‚¢B

>‚¿‚Ȃ݂ÉAQt‚͉‚߂ĊԂà‚È‚¢‚Å‚·BMFC‚Æ‚©C++/CLI‚Æ‚©Žï–¡‚Å‚â‚Á‚Ä‚¢‚Ü‚µ‚½‚ªA
>‚Ç‚¿‚ç‚à’†“r”¼’[‚È‹C‚ª‚µ‚Ä‚¨‚èAƒ}ƒ‹ƒ`ƒvƒ‰ƒbƒgƒtƒH[ƒ€‚Ńˆ‚ÈC++‚Å‚ ‚éQt‚É
>‹»–¡‚ðŽ‚Á‚½ŽŸ‘æ‚Å‚·B
‚Ç‚Á‚Õ‚è‚ÆQt‚Ì¢ŠE‚ɂ‚©‚Á‚Ä‚­‚¾‚³‚¢B
‚±‚ê‚à‚¨‚¹‚Á‚©‚¢‚©‚à(^_^;)B

423:403
09/10/31 00:11:27
>422
„Œ¾‚¢‰ß‚¬‚½‹C‚ª‚·‚é‚Ì‚ÅAŽÓ‚è‚Ü‚·B‚²‚ß‚ñ‚È‚³‚¢B
‘S‚­‹C‚É‚µ‚Ä‚¨‚è‚Ü‚¹‚ñ‚æw

‚¿‚Ȃ݂ÉA>286‚̂悤‚ÉQApplication‚Ì”h¶ƒNƒ‰ƒX(Application)‚ÉgetMainWindow()‚Æ‚¢‚¤
MainWindow‚̃|ƒCƒ“ƒ^‚ðŽæ“¾‚Å‚«‚éŠÖ”‚ð’ljÁ‚·‚éê‡A
MainWindow‚̃|ƒCƒ“ƒ^Ž©‘Ì‚ðƒZƒbƒg‚·‚é‚̂͂ǂ̂悤‚É‚·‚é‚à‚̂łµ‚傤‚©H

Ž©•ª‚ªl‚¦‚邯‚±‚ë‚Å‚ÍA”h¶ƒNƒ‰ƒXApplication‚ÉsetMainWindow(MainWindow* mainwindow);‚ð
’ljÁ‚µ‚ÄAmain()‚Å
{
Application app(argc, argv);
MainWindow mainwindow;
mainwindow.setMainWindow(&mainwindow);
mainwindow.show();

return app.exec();
}
‚Æ‚â‚é‚­‚ç‚¢‚µ‚©Žv‚¢‚‚©‚È‚¢‚̂ł·B

424:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 00:33:56
>>423
‚»‚ê‚Å‚¢‚¢‚ÆŽv‚¤‚¯‚ÇB

>mainwindow.setMainWindow(&mainwindow);
app.setMainWindow(&mainwindow);
‚¾‚ËB

425:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 08:35:26
>424
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B

„app.setMainWindow(&mainwindow);
easy miss‚Å‚µ‚½B

‚¿‚Ȃ݂ÉQApplication‚Ì”h¶ƒNƒ‰ƒX‚ðì‚éÛ‚É‹C‚ð‚‚¯‚邱‚Æ‚Á‚Ä
‚ ‚è‚Ü‚·‚©H
ƒŠƒ“ƒJ‚©‚ç
undefined reference to vtable for Application
‚Æ“{‚ç‚ê‚Ü‚µ‚½B(Application‚ÍQApplication‚Ì”h¶)
ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Í
Application::Application(int argc, char* argv[]) : QApplication(argc, argv) {}
‚Æ‚µ‚Ä‚¨‚è‚Ü‚·B

426:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 08:43:13
>425
Ž©ŒÈ‰ðŒˆ‚µ‚Ü‚µ‚½B
URLØÝ¸(randt.jp)
qmake‚ðÄŽÀs‚µ‚ÄƒŠƒrƒ‹ƒh‚µ‚½‚ç‘åä•v‚Å‚µ‚½B
‚·‚×‚ÄƒŠƒrƒ‹ƒh‚Í‚â‚Á‚Ä‚¢‚½‚̂ł·‚ªAqmake‚ÌÄŽÀs‚Í‚·‚×‚ÄƒŠƒrƒ‹ƒh‚É
“ü‚Á‚ĂȂ¢‚Ì‚©B

427:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 09:21:01
>>425 >Application::Application(int argc, char* argv[]) : QApplication(argc, argv) {} Application::Application(int &argc, char* argv[]) : QApplication(argc, argv) {}

428:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 15:13:45
>>425

> ƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Í
> Application::Application(int argc, char* argv[]) : QApplication(argc, argv) {}
> ‚Æ‚µ‚Ä‚¨‚è‚Ü‚·B

Application::Application(int &argc, char* argv[]) : QApplication(argc, argv) {}

&argc ‚Æ‚µ‚È‚¢‚Æ—Ž‚¿‚邱‚Æ‚ª‚ ‚è‚Ü‚·B

429:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/10/31 23:10:50
>428
QApplication‚ÌƒŠƒtƒ@ƒŒƒ“ƒX‚ðŒ©‚é‚ÆAƒRƒ“ƒXƒgƒ‰ƒNƒ^‚Íargc‚ªŽQÆŒ^‚Ȃ̂ł·‚ËB
‚²Žw“E‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

430:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/11/03 19:37:10
QFileDialog‚ÅAƒ_ƒCƒAƒƒO‚݂̂̃tƒBƒ‹ƒ^‚Á‚ÄŠ|‚¯‚ç‚ê‚Ü‚·‚©H


431:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/11/03 20:45:42
>>430
ˆÓ–¡‚ª•ª‚©‚ç‚È‚¢‚ñ‚¾‚¯‚ÇB
‹ï‘Ì“I‚ÉŒ¾‚¤‚Ƃǂ¤‚¢‚¤‚±‚Æ?

432:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/11/03 20:55:18
>>430
Ž¿–₵‚Ä‚¢‚é‚Ì‚ÍAƒtƒ@ƒCƒ‹‚̃tƒBƒ‹ƒ^‚¶‚á‚È‚¢‚æ‚Ë?


ŽŸƒy[ƒW
ÅVƒŒƒX•\ަ
ƒXƒŒƒbƒh‚ÌŒŸõ
—ÞŽ—ƒXƒŒˆê——
˜b‘è‚̃jƒ…[ƒX
‚¨‚Ü‚©‚¹ƒŠƒXƒg
¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ
‰É‚‚Ԃµ2ch

5136“ú‘O‚ÉXV/218 KB
’S“–:undef