yRAD“‡ŠÂ‹«z Qt ‘ ..
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