mirik Temat założony przez niniejszego użytkownika |
button i label; Visual Studio 2013, C++ » 2018-03-26 14:37:26 Witam Na Windows 7, VisualStudio`2013, C++; pytanie, bo problem szukany długi czas, ale nie znaleziony:
- dlaczego mając 'button' w kodzie programu (który to program chodzi OK) -gdy próbuję dołożyć podprogram 'void' uruchamiany 'labelem' =sterowanie klawiaturą, program nie reaguje na dobrze funkcjonujący podprogram =sterowanie klawiszami. Gdy nie ma buttona - label spełniający tą samą rolę jest OK (na przykład) . Ktoś podpowie ??
-problem 2; świeży: gdy 'label' w chwili inicjalizacji jest widoczny -pokazuje się nad innym 'labelem' -u mnie wyświetlającym fotki akurat ("Lab6->Visible = true;"). Gdy zastosuję 'ukrycie' na początku programu (Visible = false): w dowolnym momencie kodu, gdy prawidłowo w/w label sie ukazuje (visible =true) - label ten jest przykryty (u mnie obrazem fotki), tzn. innym labelem. 'TabIndex' nic nie zmienia.
Jest na pewno prosty sposób, ale jaki..? proszę o pomoc... pozdrawiam... |
|
pekfos |
» 2018-03-26 16:24:31 1. Z takiego opisu nie wiadomo w ogóle o co chodzi. 2. Nie TabIndex, tylko ZOrder. |
|
mirik Temat założony przez niniejszego użytkownika |
» 2018-03-26 19:32:18 Więc prościej: w prostym programiku jest button, użyty do sterowania-załączania czegoś tam. Działa ok, gdy klikać myszą. Równolegle chciałem mieć też możliwość sterowania tej samej operacji (lub innej -np. kończenia programu) za pomocą klawiatury, np. 'KeyDown'. I właśnie: nie da się (keyDown nie działa).. drogą prób-błędów okazało się, że sterowanie wywoływane przez klikanie labela (tych samych działań co próbowałem z użyciem buttona), nie koliduje wogóle z 'keyDown' -chodzi równolegle. I klikanie labela i dowolne klawisze klawiatury; równolegle. Tylko dlaczego ..? nigdzie nie spotkałem choćby wspomnienia o takiej różnicy używania: button-label.
2-gi poruszony problem: jakim kodem ustawić pokazywanie labela nad innymi, bym w 100% decydował kiedy i który label ma być nad innymi ? ..chyba prościej się nie da opisać tak prostego problemiku.. |
|
mateczek |
» 2018-03-26 19:35:43 jak chcesz by ktoś Ci pomógł to wklej kod który nie działa !!! |
|
mirik Temat założony przez niniejszego użytkownika |
» 2018-03-26 20:03:51 OK,konstrukcja-dane labela przy starcie programu. Label niewidoczny, ok:
this->Lab6_NazwaPliku->BackColor = System::Drawing::Color::Transparent; this->Lab6_NazwaPliku->CausesValidation = false; this->Lab6_NazwaPliku->FlatStyle = System::Windows::Forms::FlatStyle::Flat; this->Lab6_NazwaPliku->Font =( gcnew System::Drawing::Font( L"Franklin Gothic Medium", 20.25F, System::Drawing::FontStyle::Italic, System::Drawing::GraphicsUnit::Point, static_cast < System::Byte >( 238 ) ) ); this->Lab6_NazwaPliku->ForeColor = System::Drawing::Color::Navy; this->Lab6_NazwaPliku->Location = System::Drawing::Point( 458, 446 ); this->Lab6_NazwaPliku->Name = L"Lab6_NazwaPliku"; this->Lab6_NazwaPliku->Size = System::Drawing::Size( 348, 34 ); this->Lab6_NazwaPliku->TabIndex = 8; this->Lab6_NazwaPliku->Text = L"- Nazwa wczytanej fotki.."; this->Lab6_NazwaPliku->TextAlign = System::Drawing::ContentAlignment::MiddleCenter; this->Lab6_NazwaPliku->UseMnemonic = false; this->Lab6_NazwaPliku->Visible = false;
I teraz w dowolnym miejscu programu linia kodu: this->Lab6_NazwaPliku->Visible = true; powoduje pojawienie się labela "Lab6_NazwaPliku", ale jest zawsze pod innymi labelami. Np pod tym tak skonstruowanym:
this->Lab5_Fotki->AccessibleRole = System::Windows::Forms::AccessibleRole::None; this->Lab5_Fotki->BackColor = System::Drawing::Color::FromArgb( static_cast < System::Int32 >( static_cast < System::Byte >( 255 ) ), static_cast < System::Int32 >( static_cast < System::Byte >( 192 ) ), static_cast < System::Int32 >( static_cast < System::Byte >( 128 ) ) ); this->Lab5_Fotki->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D; this->Lab5_Fotki->Cursor = System::Windows::Forms::Cursors::Hand; this->Lab5_Fotki->Enabled = false; this->Lab5_Fotki->FlatStyle = System::Windows::Forms::FlatStyle::Popup; this->Lab5_Fotki->Font =( gcnew System::Drawing::Font( L"Microsoft Sans Serif", 14.25F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, static_cast < System::Byte >( 238 ) ) ); this->Lab5_Fotki->ForeColor = System::Drawing::Color::Maroon; this->Lab5_Fotki->Location = System::Drawing::Point( 2, 3 ); this->Lab5_Fotki->Name = L"Lab5_Fotki"; this->Lab5_Fotki->Size = System::Drawing::Size( 173, 32 ); this->Lab5_Fotki->TabIndex = 20; this->Lab5_Fotki->Text = L"-Fotki-"; this->Lab5_Fotki->TextAlign = System::Drawing::ContentAlignment::MiddleCenter; this->Lab5_Fotki->Visible = false; this->Lab5_Fotki->Click += gcnew System::EventHandler( this, & Form1::Lab5_Fotki_Click );
Pytanie: jak zmusić by "Lab6_NazwaPliku" był widoczny ponad "Lab5_Fotki"...? |
|
darko202 |
» 2018-03-27 15:21:19 1. przeczytaj o sterowaniu zdarzeniami
gdy klikasz w "button" na formie uruchamiasz zdarzenie kliknięcia na tym przycisku, można to samo zrobić dla etykiety "label" trzeba to jednak wymusić np. poprzez wybranie label-> propertis -> event
2. to co wskazałeś jako kod dotyczy jednego z plików projektu
|
|
« 1 » |