Programming/qt2026. 1. 12. 17:58

2026.01.13

다시보다 보니 기본 컴포넌트에 mouse area 라는 것이 있다.

이미지 하나 띄우고 마우스 영역을 지정하고 원하는 크기로 조절하면

과거 html 에서 이미지 맵 하듯 가능해진다.

 

mouse area에서 area는 활성화 되는데 hover는 활성화 되어있지 않아서 체크를 해줘야 하고

체크를 해주면 의도한 대로 작동되게 된다.

----

 

qt quick 으로 생성해서 이미지를 넣고 사진을 띄우는것 까진 성공!(프로젝트 외부 디렉토리에 이미지는 안됨)

그래서 이미지를 클릭하면 무언가 하려고 하는데

connections 라던가 event list 에서 무언가 쓸만해 보이는게 뜨지 않는다.

 

 

그래서 우클릭 후 Add Mouse Area를 해주면

 

 

 image가 아니라 mouseArea로 잡히고

 

평범하게 보던 mouse 클릭 이벤트 들을 사용할 수 있게 된다.

 

확인필요

[링크 : https://studiodoc.tistory.com/171]

'Programming > qt' 카테고리의 다른 글

qt quick 예제 calqlatr 코드분석  (0) 2026.01.13
qt qml view  (0) 2026.01.13
qt creator 18.0.1 design 활성화 하기  (0) 2026.01.09
qt 변수 초기화 문법, cpp 초기화 리스트  (0) 2021.12.08
qt5 fb reset  (0) 2021.02.23
Posted by 구차니
Programming/qt2026. 1. 9. 18:18

메뉴 help - About plugins

 

Qt Quick 에서 QT Quick Designer (deprecated) 를 체크하고 재시작 하면 된다.

 

 

그냥 곱게(?) Design studio 띄우는 법은 없나?

 

[링크 : https://dev-optimist.tistory.com/44]

[링크 : https://makersweb.net/qt/13535]

'Programming > qt' 카테고리의 다른 글

qt qml view  (0) 2026.01.13
qt quick 이미지 클릭  (0) 2026.01.12
qt 변수 초기화 문법, cpp 초기화 리스트  (0) 2021.12.08
qt5 fb reset  (0) 2021.02.23
qt framebuffer에 출력하기  (0) 2021.02.09
Posted by 구차니
Programming/golang2025. 11. 24. 19:04

golang 에서 커밋 해시를 바이너리에 넣는 방법을 찾아보는 중

 

아래 방법은 링커에서 변수에 넣는것 같은데 이것도 쓸만해 보이긴 한데..

go build -ldflags "-X my/package/config.Version=1.0.0"

[링크 : https://www.reddit.com/r/golang/comments/rhpbvo/what_kind_of_things_have_you_ran_with_gogenerate/?tl=ko]

 

go version은 좀더 상세한 자료가 들어가는것 같은데 좀더 나은 접근 방법이 될 듯?

go version
The go command now embeds version control information in binaries. It includes the currently checked-out revision, commit time, and a flag indicating whether edited or untracked files are present. Version control information is embedded if the go command is invoked in a directory within a Git, Mercurial, Fossil, or Bazaar repository, and the main package and its containing main module are in the same repository. This information may be omitted using the flag -buildvcs=false.

Additionally, the go command embeds information about the build, including build and tool tags (set with -tags), compiler, assembler, and linker flags (like -gcflags), whether cgo was enabled, and if it was, the values of the cgo environment variables (like CGO_CFLAGS). Both VCS and build information may be read together with module information using go version -m file or runtime/debug.ReadBuildInfo (for the currently running binary) or the new debug/buildinfo package.

The underlying data format of the embedded build information can change with new go releases, so an older version of go may not handle the build information produced with a newer version of go. To read the version information from a binary built with go 1.18, use the go version command and the debug/buildinfo package from go 1.18+.

[링크 : https://tip.golang.org/doc/go1.18#go-command]

'Programming > golang' 카테고리의 다른 글

golang channel..2 방향, select 등  (0) 2026.08.25
golang Init()  (0) 2026.08.20
golang 정적웹 파일 포함하기  (0) 2025.11.24
go vet (golang 정적분석)  (0) 2025.10.02
golang 윈도우 서비스 프로그램 작성하기  (0) 2025.02.18
Posted by 구차니
Programming/golang2025. 11. 24. 18:59

내취향은 아니지만..

go generate 명령을 통해 코드를 생성하고 다시 빌드해서 넣는 듯

 

[링크 : https://go.dev/blog/generate]

[링크 : https://github.com/securego/gosec]

[링크 : https://ccambo.tistory.com/m/entry/Golang-의존성-없이-웹으로-서비스할-정적-파일들을-Golang-바이너리에-추가하기]

'Programming > golang' 카테고리의 다른 글

golang Init()  (0) 2026.08.20
golang git commit hash  (0) 2025.11.24
go vet (golang 정적분석)  (0) 2025.10.02
golang 윈도우 서비스 프로그램 작성하기  (0) 2025.02.18
golang tcp socket timeout 주기(listen, read)  (0) 2024.04.08
Posted by 구차니
Programming/rust2025. 11. 12. 09:24

golang에서는 비트 구조체 안되던것 같은데 러스트에서는 된다고 하니 관심이 증가중 ㅋㅋ

머 리눅스 커널에서도 쓰려고 하는데 설마 없겠어? 싶기도 하네

 

use bit_struct::*; 

enums! {
    // 2 bits, i.e., 0b00, 0b01, 0b10
    pub HouseKind { Urban, Suburban, Rural}
}

bit_struct! {
    // u8 is the base storage type. This can be any multiple of 8
    pub struct HouseConfig(u8) {
        // 2 bits
        kind: HouseKind,
        
        // two's compliment 3-bit signed number
        lowest_floor: i3,
        
        // 2 bit unsigned number
        highest_floor: u2,
    }
}

// We can create a new `HouseConfig` like such:
// where all numbers are statically checked to be in bounds.
let config = HouseConfig::new(HouseKind::Suburban, i3!(-2), u2!(1));

// We can get the raw `u8` which represents `config`:
let raw: u8 = config.raw();
assert_eq!(114_u8, raw);

// or we can get a `HouseConfig` from a `u8` like:
let mut config: HouseConfig = HouseConfig::try_from(114_u8).unwrap();
assert_eq!(config, HouseConfig::new(HouseKind::Suburban, i3!(-2), u2!(1)));
// We need to unwrap because `HouseConfig` is not valid for all numbers. For instance, if the
// most significant bits are `0b11`, it encodes an invalid `HouseKind`. However, 
// if all elements of a struct are always valid (suppose we removed the `kind` field), the struct will
// auto implement a trait which allows calling the non-panicking:
// let config: HouseConfig = HouseConfig::exact_from(123_u8);

// We can access values of `config` like so:
let kind: HouseKind = config.kind().get();

// And we can set values like so:
config.lowest_floor().set(i3!(0));

// We can also convert the new numeric types for alternate bit-widths into the 
// numeric types provided by the standard library:
let lowest_floor: i3 = config.lowest_floor().get();
let lowest_floor_std: i8 = lowest_floor.value();
assert_eq!(lowest_floor_std, 0_i8);

[링크 : https://docs.rs/bit-struct/latest/bit_struct/]

'Programming > rust' 카테고리의 다른 글

rust 참조와 대여  (0) 2025.11.11
rust mut 외 몇가지 컴파일 에러들  (0) 2023.05.26
rust mut  (0) 2023.05.25
rust visibility and privacy  (0) 2023.05.25
rust 소유권  (0) 2023.05.25
Posted by 구차니
Programming/rust2025. 11. 11. 19:29

소유권은 하나만 가지지만, 참조는 소유권이 아니라서 볼수는 있다고

그렇다면.. 공유메모리 처럼 서로 쓰고 지우게 할 수는 없고 무조건 매니저를 거쳐서 하는 구조로 가야하나?

 

[링크 : https://doc.rust-kr.org/ch04-02-references-and-borrowing.html]

'Programming > rust' 카테고리의 다른 글

rust 비트 구조체  (0) 2025.11.12
rust mut 외 몇가지 컴파일 에러들  (0) 2023.05.26
rust mut  (0) 2023.05.25
rust visibility and privacy  (0) 2023.05.25
rust 소유권  (0) 2023.05.25
Posted by 구차니
Programming/C Win32 MFC2025. 10. 11. 18:22

대부분의 경우 소수점 자리만 제한하는데

정수쪽도 길이 제한할일이 있어서 찾아보는데 묘하게 자료가 없어서 테스트 해봄

다만 리눅스에서 한거라 윈도우에서는 다를수 있음

 

void main()
{
	float a = -12.12334;
	printf("%f\n", a);
	printf("%4.1f\n",a);
	printf("%5.1f\n",a);
	printf("%6.1f\n",a);

	printf("%7.1f\n",a);
 	printf("%7.2f\n",a);
	printf("%7.3f\n",a);
   
	printf("%9.1f\n",a);
	printf("%9.2f\n",a);
	printf("%9.3f\n",a);
}

 

$ ./a.out 
-12.123340
-12.1
-12.1
 -12.1
  -12.1
 -12.12
-12.123
    -12.1
   -12.12
  -12.123

 

 

%7.1f / %7.2f / %7.3f 와

%9.1f / %9.2f / %9.3f 가

어떻게 보면 내가 하고 싶었던 결과인데 자리를 정리하면 아래와 같이 나온다.

  1 2 3 4 5 6 7 8 9
%7.3f - 1 2 . 1 2 3    
%9.3f     - 1 2 . 1 2 3

 

정리하자면

%n.mf 에서

n은 정수 부분, 소수점, 부호 를 포함한 전체 길이이고

m은 그중 소수점의 자릿수. m은 n 보다 작아야 한다.

 

Posted by 구차니

대충~ 3.10 부터 추가되었다는 이야기

 

def http_error(status):
    match status:
        case 400:
            return "Bad request"
        case 404:
            return "Not found"
        case 418:
            return "I'm a teapot"
        case _:
            return "Something's wrong with the internet"
Note the last block: the “variable name” _ acts as a wildcard and never fails to match. If no case matches, none of the branches is executed.

You can combine several literals in a single pattern using | (“or”):

case 401 | 403 | 404:
    return "Not allowed"

class Point:
    x: int
    y: int

def where_is(point):
    match point:
        case Point(x=0, y=0):
            print("Origin")
        case Point(x=0, y=y):
            print(f"Y={y}")
        case Point(x=x, y=0):
            print(f"X={x}")
        case Point():
            print("Somewhere else")
        case _:
            print("Not a point")

[링크 : https://docs.python.org/ko/3.10/tutorial/controlflow.html#match-statements]

[링크 : https://okeybox.tistory.com/395]

[링크 : https://leapcell.io/blog/ko/python-eseo-switch-muneul-jakseonghaneun-bangbeop-2025-switch-case-yeeje]

[링크 : https://www.bangseongbeom.com/python-switch-case]

 

PEP - Program Enhance Proposal

[링크 : https://wikidocs.net/7896]

 

2020년에 작성되었고, 3.10 버전에 추가됨.

PEP 636 – Structural Pattern Matching: Tutorial
Author: Daniel F Moisset <dfmoisset at gmail.com>
Sponsor: Guido van Rossum <guido at python.org>
BDFL-Delegate:
Discussions-To: Python-Dev list
Status: Final
Type: Informational
Created: 12-Sep-2020
Python-Version: 3.10
Post-History: 22-Oct-2020, 08-Feb-2021
Resolution: Python-Committers message

[링크 : https://peps.python.org/pep-0636/]

 

아니 본인이 2006년에 썼다가 reject 했어?

PEP 3103 – A Switch/Case Statement
Author:Guido van Rossum <guido at python.org>
Status:Rejected
Type:Standards Track
Created:25-Jun-2006
Python-Version:3.0
Post-History:26-Jun-2006

[링크 : https://peps.python.org/pep-3103/]

Posted by 구차니
Programming/golang2025. 10. 2. 10:54

'Programming > golang' 카테고리의 다른 글

golang git commit hash  (0) 2025.11.24
golang 정적웹 파일 포함하기  (0) 2025.11.24
golang 윈도우 서비스 프로그램 작성하기  (0) 2025.02.18
golang tcp socket timeout 주기(listen, read)  (0) 2024.04.08
golang reflect  (0) 2024.02.20
Posted by 구차니

def main() 이 없으니까

독립적으로 실행중인지, import 되어 다른데서 실행을 하는건지 알 필요가 있을때

아래의 문구를 통해서 실행하거나 라이브러리로 작동시키거나 할 수 있다.

if __name__ == "__main__":
    print("run!")

 

[링크 : https://dev-jy.tistory.com/14]

Posted by 구차니